Advanced Programming in UNIX Environment Episode 11

来源:互联网 发布:最好的网络电视盒子 编辑:程序博客网 时间:2024/05/16 04:32

功能测试宏
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环境则很少考虑宿主操作系统。

阅读全文
0 0
原创粉丝点击