简体   繁体   中英

ctime and time warnings compiling on OSX

I am getting some warnings when compiling a C program on OSX 10.6.5, which seem to be quite critical.

extras.c:15: warning: implicit declaration of function ‘time’
extras.c: In function ‘outlog’:
extras.c:363: warning: implicit declaration of function ‘ctime’

The corresponding lines are as follows:

Lines 13-15:

RANDNUMGEN = gsl_rng_alloc(gsl_rng_taus);
long t1;
(void) time(&t1);

Lines 360-363:

if (LOG==NULL) { LOG=stdout;}

TVAL = time(NULL);
char* TIMESTRING = ctime(&TVAL);

I believe the program was originally written for Linux, so I wonder if there is a difference between time and ctime on the two platforms?

Verify that the C files contains:

#include <time.h>

somewhere around the top.

Also,

long t1;
time(t1);

is pretty lousy code, the argument to time() has type time_t* , so that should read

time_t t1;
time(&t1);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM