功能测试宏 POXIS.1标准的早期版本定义_POXIS_SOURCE常量。在POXIS.1的2001版中,他被替换为_POXIS_C_SOURCE。 _POXIS_C_SOURCE及_XOPEN_SOURCE被称为功能测试宏(feature test macro)。所有功能测试宏都以下划线开始。 基本数据类型 头文件<sys/types.h>中定义了某些与实现有关的数据类型,他们被称为基本系统数据类型(primitive system data type)。还有很多这种数据类型定义在其他头文件中。在头文件中,这些数据类型都是用C的typedef来定义的。它们绝大多数都以_t结尾。 标准之间的冲突 ISO C定义了clock函数,他返回进程使用的cpu时间,返回值是clock_t类型值,但ISO C标准没有规定他的单位。POXIS.1定义了times函数,它返回其调用者及其所有终止子进程的cpu时间及时钟时间,所有这些值都是clock_t类型值。sysconf函数用来获得每秒滴答数,用于表示times函数的返回值。ISO C和POSIX.1用同一种数据类型(clock_t)来保存对时间测量,但定义了不同的单位。 ISO C标准说明函数时,可能没有像POSIX.1那样严。在POSIX环境下,有些函数可能要求有一个与C环境下不同的实现,因为POSIX环境中有多个进程,而ISO C环境则很少考虑宿主操作系统。
原文链接:https://www.f2er.com/bash/389884.html