POSIX 一致性:NetBSD 5.1gettimeofday 声明

POSIX 一致性:NetBSD 5.1gettimeofday 声明

我正在编译一些代码,通过-D_POSIX_C_SOURCE=2.

该代码包含标头<sys/time.h>并想要调用gettimeofday,但在 NetBSD 5.1 上,有一个关于该函数未声明的编译器警告。

查看 NetBSD 的标头,我们看到 的声明gettimeofday包含了_POSIX_C_SOURCE至少为 的测试200112

gettimeofdayPOSIX 真的是2001 年才引入的吗?这似乎不太正确。 1993 年,已经有了clock_gettime纳秒和不同的时钟类型,并且getttimeofday是古老的 4.2 BSD 东西。

在 GNU C 库的 中<sys/time.h>gettimeofday根本没有被任何东西包裹。

哪个是正确的:NetBSD 标头,还是我的代码依赖于_POSIX_C_SOURCE=2揭示gettimeofday(和 glibc,无条件提供它)的声明?

答案1

相关内容