gpt4 book ai didi

在 C 中正确记录 UNIX 时间(-Wall 噩梦)

转载 作者:行者123 更新时间:2023-12-01 11:56:24 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:




10年前关闭。




Possible Duplicate:
What primitive data type is time_t?



基本上,我想要做的就是生成当前的 UNIX 时间(来自 time(NULL) 的结果)并将其打印到我打开的文件中。

我试过这样的代码:
fprintf(f, "%i", time(NULL));

但是我收到了这些烦人的编译器警告:
src/database-createtbl.c:140: warning: int format, time_t arg (arg 3)

我正在尝试使用 -Wall 进行编译 - 这真的不应该是一个问题,但它让我发疯。

最佳答案

简单地转换为已知类型:

printf("%ld", (long)time(NULL));
time 返回的类型取决于操作系统(别名为 time_t ,但您不知道这是 long 还是 int 或其他),因此您需要将其转换为已知类型,然后再将其传递给 printf , 以使格式与参数类型匹配。

关于在 C 中正确记录 UNIX 时间(-Wall 噩梦),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6804371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com