Date: Fri, 27 Oct 1995 13:10:40 -0600 (MDT) From: Dave Andersen <angio@aros.net> To: wollman@lcs.mit.edu (Garrett A. Wollman) Cc: freebsd-questions@freebsd.org Subject: Re: Help -- Stupid "C" question. Message-ID: <199510271910.NAA14179@terra.aros.net> In-Reply-To: <9510271522.AA22958@halloran-eldar.lcs.mit.edu> from "Garrett A. Wollman" at Oct 27, 95 11:22:05 am
next in thread | previous in thread | raw e-mail | index | archive | help
Lo and behold, Garrett A. Wollman once said: > > Hey, it's portable programming time! > > Actually, let's be slightly more accurate here. > > time(3) takes as its only argument a pointer to type `time_t'. If > that pointer is not null (NB: not `not NULL'), then it fills in that > location with the current time. In any case, it also returns a value > of type `time_t'. (Old systems spelled `time_t' l-o-n-g, but you > should use `time_t' and define it yourself if the system doesn't. > FreeBSD always has.) Depending on your preferred style of > programming, you might want to write either: > > time_t thetime; > time(&thetime); > or > time_t thetime; > thetime = time((time_t *)0); > > Note that the `(time_t *)' case is important for portable programs, > unless you can guarantee that a complete prototype of the `time' > function is in scope. (I consider it to be good style anyway.) The You are, of course, entirely correct here. I seem to have been bitten by the laziness bug. :) My use of the 'long' was somewhat egregious, however; it's the kind of thing that makes code break wildly after a long int isn't long enough to store the time since time began. -Dave Andersen -- angio@aros.net Complete virtual hosting and business-oriented system administration Internet services. (WWW, FTP, email) http://www.aros.net/ http://www.aros.net/about/virtual/ "She totally confused all the passing piranhas"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199510271910.NAA14179>