3
可能重复:
What primitive data type is time_t?正确记录UNIX时间C(-Wall噩梦)
基本上,所有我想要做的是产生当前的UNIX时间(从时间导致(NULL))并将其打印到已打开的文件中。
我已经试过这样的代码:
fprintf(f, "%i", time(NULL));
,但我得到这些恼人的编译器警告:
src/database-createtbl.c:140: warning: int format, time_t arg (arg 3)
我试图用-Wall编译 - 这实在不应该一个问题,但它使我疯狂。
这是最便携的(到C99之前的版本),但是使用long long或intmax_t(或其未签名的版本)和相应的C99格式说明符可能更安全。在一个假想的Y2038 32位计算机上,其中'long'是32位,而'time_t'是64位。 –