【发布时间】:2018-03-02 02:38:56
【问题描述】:
标头time.h 中的time 函数由POSIX 定义返回一个time_t,它显然可以是有符号整数或某种浮点数。
http://en.cppreference.com/w/c/chrono/time
但是,该函数在出错时返回 (time_t)(-1)。
time在什么情况下会失败?
根据签名,time_t time( time_t *arg ) 似乎该函数不应该分配,因此这是一个潜在的失败原因。
【问题讨论】:
-
您到底为什么要使用“cppreference.com”作为 C 文档的来源?是的,C++ 和 C 是相关的,但仍然不一样。对于 POSIX 的东西,使用 POSIX.1-2008 标准。对于 C 和 POSIX 函数(不包括微软设法填充到 C11 中的大多数愚蠢的
_s函数,Windows 之外的任何人都不会使用),请使用 Linux Man Pages Online;大多数页面都包含 Conforming To 部分,该部分描述了该功能的相关标准。 -
他们对 C 特定内容的覆盖非常好,并且该页面引用了相关标准。不过请注意,下次我会使用更好的来源。