C语言发展历史沿革 ·C语言起源于1969年Ken Thompson开发的B语言,后来D.M.Ritchie于1971年 在B语言的基础上开发了NEWB语言,也就是C语言。 1973年Ken Thompson和D.M.Ritchie将UNX用C语言重写(原来是用汇编语 言实现的),UNIX第5版诞生,从此UNX就和C语言成孪生兄弟。 不久,C语言越来越受欢迎。I978年Brian W.Kernighan和D.M.Ritchiel以 Steve Johnson编写的PCC这个C语言编译器为基础,编著了《TheC Programming Language》,人们把这个C语言版本称为K&RC。 。 20世纪80年代,C语言广泛流行,动摇了BASICE的地位。许多人为其写变种 各种C版本涌出。因为C语言没有一个统一的标准,导致了它的代码无法 在各种编译器上实现,C语言受到了变种松散的威肋一因此C语言必须进 行标准化。 1983年美国国家标准化组织(ANSI)成立了C语言工作小组,开始对C进行 标准化,1989年12月ANSI C:最终被ANSI委员会接纳(我们学习C语言应该学 习标准化后的C语言版本)。1990年国际标准化组织(ISO)也接纳了ANSI C 并做了一些小的修改,也就形成了ISOC。1990年初,ANS委员会重新接 纳了ISOC。 我们学习的C语言是ANSI C(ISO C)
C语言发展历史沿革 • C语言起源于1969年Ken Thompson开发的B语言,后来D.M.Ritchie于1971年 在B语言的基础上开发了NEW B语言,也就是C语言。 • 1973年Ken Thompson和 D.M.Ritchie 将UNIX用C语言重写(原来是用汇编语 言实现的),UNIX第5版诞生,从此UNIX就和C语言成孪生兄弟。 • 不久,C语言越来越受欢迎。1978年 Brian W.Kernighan和D.M.Ritchie以 Steve Johnson编写的PCC这个C语言编译器为基础,编著了《The C Programming Language》,人们把这个C语言版本称为K&R C。 • 20世纪80年代,C语言广泛流行,动摇了BASIC的地位。许多人为其写变种 ,各种C版本涌出。因为C语言没有一个统一的标准,导致了它的代码无法 在各种编译器上实现,C语言受到了变种松散的威胁——因此C语言必须进 行标准化。 • 1983年美国国家标准化组织(ANSI)成立了C语言工作小组,开始对C进行 标准化,1989年12月ANSI C最终被ANSI委员会接纳(我们学习C语言应该学 习标准化后的C语言版本)。1990年国际标准化组织(ISO)也接纳了ANSI C ,并做了一些小的修改,也就形成了ISO C。1990年初,ANSI委员会重新接 纳了ISO C。 • 我们学习的C语言是ANSI C(ISO C)
1.2.1C语言的发展 C语言同时具有高级语言和汇编语言的优点, 很多编程语言都是在C语言的基础上发展起来的, 如C+,C#,Java,Javascript等。先掌握C语 言,对学习其他程序设计语言有很大帮助
1.2.1 C语言的发展 C语言同时具有高级语言和汇编语言的优点, 很多编程语言都是在C语言的基础上发展起来的, 如C++,C#,Java,Javascript等。先掌握C语 言,对学习其他程序设计语言有很大帮助
1.2.2C语言的特点 1、简洁:32个关键字,9种控制语句 2、运算符丰富:34种运算符 3、数据结构类型丰富:整型、实型、字符型、数组类型、 指针类型等 4、控制流程结构化:结构化控制语句,易于实现模块化 5、允许直接访问物理地址 6、生成目标代码质量高,执行效率高 7、可移植性好
1.2.2 C语言的特点 1、简洁:32个关键字,9种控制语句 2、运算符丰富:34种运算符 3、数据结构类型丰富:整型、实型、字符型、数组类型、 指针类型等 4、控制流程结构化:结构化控制语句,易于实现模块化 5、允许直接访问物理地址 6、生成目标代码质量高,执行效率高 7、可移植性好
32个关键字:(由系统定义,不能重作其它定义) auto break case char const continue default do double else enum extern float for goto f int long register return short signed sizeof static struct switch typedef unsigned union void volatile while
32个关键字:(由系统定义,不能重作其它定义) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned union void volatile while <