C语言的发展
1967英国剑桥大型Martin Richards推出BCPL语言
1970美国AT&T贝尔实验室Ken Thompson以BCPL为基础设计B语言(过于简单,无数据类型)
1972-1973美国贝尔实验室D.M.Ritchie在B基础上设计出C语言(有多种数据类型,可移植性)
1973Ken Thompson和D.M.Ritchie合作把UNIX的90%用C语言改写,即UNIX第五版
1978后C语言先后移植到大中小微型机器上,很快风靡全世界
1978Brian W.Kernighen和Dennis M.Ritchie合著The C Programming Language(第一个C标准)
1983美国国家标准协会ANSI制定第一个C语言标准草案(‘83ANSI C)
1988Brian W.Kernighen和Dennis M.Ritchie修订著作The C Programming Language
1989ANSI公布完整的C语言标准——ANSI X3.159-1989(常称ANSI C或C89)
1990国际标准化组织ISO接受C89作为国际标准ISO/IEC 9899:1990(C90,与C89基本一致)
1995ISO对C90做了修订,即“1995基准增补1(ISO/IEC 9899/AMD1:1995)”(C95)
1999ISO又对C进行修订,命名“ISO/IEC 9899:1999”(C99,C99是C89的扩充)
2001 TC1 2004 TC2
C语言优点
功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好,既具有高级语言的特点,又具有低级语言的许多特点,既适于编写系统软件,又能方便地用来编写应用软件。是一种用途广泛、功能强大、使用灵活的过程型编程语言。
C语言更适合于解决某些小型程序地编程。
C语言特点
(1)语言简洁、紧凑、使用方便灵活。实际上C是一个很小的内核语言。
(2)运算符丰富。
(3)数据类型丰富。
(4)具有结构化的控制语句。C语言是完全模块化和结构化的语言。
(5)语法限制不太严格,程序设计自由度大。对变量的类型使用比较灵活。
允许程序编写者有较大的自由度,因此放宽了语法检查。
(6)允许直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。
(7)可移植性好。
(8)生成目标代码质量高,程序执行效率高。
目前C主要用途之一是编写“嵌入式系统程序”。
C语言程序结构特点
- 一个程序由一个或者多个源程序文件组成。源程序文件包括3部分——1.预处理指令2.全局声明3.函数定义
- 函数使C程序的主要组成部分,函数是C程序的基本单位。
- 一个函数包括两个部分——1.函数首部2.函数体【函数体包括1声明部分(定义在本函数中所用到的变量)2执行部分(由若干语句组成,指定在函数中所进行的操作)】
- 程序总是从main函数开始执行的。
- 程序中对计算机的操作是由函数中的C语言完成的。
- 在每个数据声明和语句的最后必须有一个分号。
- C语言本身不提供输入输出语句。
- 程序应当包含注释。
运行C程序的步骤方法
- 上机输入和编辑源程序。文件用.c作为后缀,生成源程序文件
- 对源程序进行编译,先用C编译系统提供的“预处理器”(又称“预处理程序”或“预编译器”)对程序中的预处理指令进行编译预处理。生成.obj二进制目标程序文件。
- 进行连接处理。通过“连接编辑程序”,生成.exe可执行程序文件。
- 运行可执行程序,得到运行结果。