time_t raw_time = time(NULL);
tm* current_time = localtime(&raw_time);
我自己得到了答案......我完全搞砸了警告。不管怎样,谢谢。
答案 0 :(得分:4)
localtime()
函数可追溯到(int)
为16位且在堆栈上传递(long)
时未得到广泛支持;因此,它被指定通过(long *)
,当时是16位。它一直保留原样,因为更改它会破坏大量的代码。您会发现大多数与时间相关的函数都是这样做的,因为它们是使用(long)
时唯一的函数。 (lseek()
后来出现。小心猜测非(long)
- 使用它取代的函数?)
答案 1 :(得分:2)
localtime需要一个“time_t *”参数,它是一个指针。所以你必须把&那里。