1 / 92
文档名称:

c语言标准参考手册.pdf

格式:pdf   页数:92
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c语言标准参考手册.pdf

上传人:lxydx 2015/10/20 文件大小:0 KB

下载得到文件列表

c语言标准参考手册.pdf

文档介绍

文档介绍:1 C 的标准化过程
C 语言自诞生到现在,期间经历了多次标准化过程,主要分成以下几个阶段:
Traditional C
此时的 C 语言还没有标准化,来自“C Programming Language, First Edition,
by Brian W. Kernighan, Dennis M. Ritchie. Prentice Hall PTR 1978”的 C
描述可算作“正式”的标准,所以此时的 C 也称为“K&R”C。
期间 C 语言一直不断的发生细微的变化,各编译器厂商也有自己的扩展,这个过
程一直持续到 20 世纪 80 年代末。
C89
考虑到标准化的重要,ANSI(American National Standards Institute)制定了
第一个 C 标准,在 1989 年被正式采用(American National Standard
-1989),故称为 C89,也称为 ANSI C。
该标准随后被 ISO 采纳,成为国际标准(ISO/IEC 9899:1990)。
C89 的主要改动:
· 定义了 C 标准库;
· 新的预处理命令和特性;
· 函数原型(prototype);
· 新关键字:const、volatile、signed;
· 宽字符、宽字符串和多字节字符;
· 转化规则、声明(declaration)、类型检查的改变。
C95
这是对 C89 的一个修订和扩充,称为“C89 with Amendment 1”或 C95,严格说
来并不是一个真正的标准。
C95 的主要改动:
· 3 个新标准头文件:、、;
· 一些新的标记(token)和宏(macro);
· 一些新的 printf/scanf 系列函数的格式符;
· 增加了大量的宽字符和多字节字符函数、常数和类型。
C99
这是目前最新的标准,由 ISO 制定于 1999 年(ISO/IEC 9899:1999),故称为 C99。
C99 的主要改动:
· plex);
· 整数(integer)类型扩展;
· 变长数组;
· Boolean 类型;
· 非英语字符集的更好支持;
· 浮点类型的更好支持;
· 提供全部类型的数学函数;
· C++风格注释(//)。

2 C 标准文档
C99
这是一个 pdf 文件:。
C89
C99 已经替代 C89 成为标准,所以 C89 文档已经很难找了。
下面是书籍“C Programming Language, Second Edition, by Brian W. Kernighan,
Dennis M. Ritchie. Prentice Hall PTR (April 1, 1988), 0131103628.”附
录 A 的一份拷贝,在此作为 C89 标准以供需要时查阅。
同时也提供中文版本,内容来自该书对应的中译版“《C 程序设计语言》,徐宝
文等译,机械工业出版社出版,ISBN 7111075897”。
文档仅供个人参考使用(建议以英文版为主):
英文版中文版
为方便起见,提供一份标点符号中英对照表,希望有用:标点符号中英对照表。

3 C 标准的选择
选择标准依赖于编译器的支持和对可移植性的要求。
C99 是当前的标准,但它仍未得到广泛支持,虽然标准发布已经多年。C99 对
C89(C95)的改动非常大,如果编写 C99 的代码,那么可移植性必然受到限制。此
外,个人认为 C99 的一些新特性在大多数程序设计中并不是必须的。
C89(包括 C95)是目前使用最广泛的,并得到所有主流编译器的支持。
Traditional C 现在只会在一些非常老的代码中才能见到了,除非你在维护旧代
码,否则不应该再使用它。
所以,个人觉得当前还是以 C89(包括 C95)标准为主。
1 引言
本手册描述的 c 语言是 1988 年 10 月 31 日提交给 ANSI 的草案,批准号为“美国
国家信息系统标准―C 程序设计语言,-1989”。尽管我们已非常小心,
以便这个手册的介绍可以信赖,但它毕竞不是标准本身,而是对标准的一个解释。
这个手册的安排基本与标准相似,也与本书的第 1 版相似,但是对细节的组织是
不同的。本手册给出的语法与标难是一样的,只是有少量产生式有所修改,词法
元素和预处理器的定义也非形式化。注释部分说明