UNIX环境高级变成——第二章 UNIX标准及实现

第二章 UNIX标准及实现

2.2.1 ISO C

一、ISO C头文件函数

头文件     说明
<assert.h>     验证程序断言
<complex.h>     复数运算支持
<ctype.h>     字符分类和映射支持
<errno.h>     错误码
<fenv.h>     浮点环境
<float.h>     浮点支持
<inttypes.h>     整型格式转换
<iso646.h>     赋值、关系、一元操做符宏
<limits.h>     实现常量
<locale.h>     本地化支持
<math.h>     数学运算库
<setjmp.h>     非局部goto
<signal.h>     信号支持
<stdarg.h>     可变长度参数
<stdbool.h>     布尔类型支持
<stddef.h>     标准定义
<stdint.h>     标准整形
<stdio.h>     标准输入输出
<stdlib.h>     实用函数库
<string.h>     字符串操做
<tgmath.h>     通用类型数学宏
<time.h>     时间日期支持
<wchar.h>     多字节宽字符支持
<wctype.h>     宽字符分类和映射支持

限制

一、因为大量标准化工做的努力,已有若干种可移植的方法以肯定这些幻数和具体实现定义的限制。这很是有助于改善UNIX环境下软件的可移植性。测试

二、如下两种类型的限制是必须的:
(1)编译时限制(如,短整型的最大值是什么?)
(2)运行时限制(如,头文件有多少个字符)
编译时限制可在头文件中定义。程序在编译时能够包含这些头文件
运行时限制要求进程调用一个函数得到限制值。code

三、为了解决UNIX多文件系统中不一样文件系统中不一样文件长度的限制,UNIX提供了如下3种限制:
(1)编译时限制(头文件)
(2)与文件或目录无关的运行时限制(sysconf函数)
(3)与文件或目录有关的运行时限制(pathconf函数和fpathconf函数)进程

四、ISO C定义的全部编译时限制都列在头文件<limits.t>中。字符串

函数sysconf、pathconf和fpathconf

一、函数原型原型

#include <unistd.h>

long sysconf(int name);

long pathconf(const char *pathname,int name);

long fpathconf(int fd,int name);

功能测试宏

一、因为UNIX不一样版本有不一样的实现,为了保证只使用POSIX.1标准,在头文件中定义了
_POSIX_SOURCE_XOPEN_SOURCE功能测试宏数学

基本数据类型

一、在头文件<sys/types.h>中定义了某些与实现有关的数据类型,它们用C的typedef来定义,大多数以_t结尾,被成为集本数据类型。string

相关文章
相关标签/搜索