1、1 C+程序设计 谭浩强编著 清华大学出版社 课件制作:福建师范大学 Jerryhuang 2 第一章 C+概述 C+语言发展历史 自从 1946年第一台电子数字计算机 ENIAC问世以来,随着计算机应用领域的不断扩大,促进了计算机技术的高速发展,尤其是近年来计算机的硬件和软件都是日新月异。作为应用计算机的一种工具 程序设计语言,得到不断的充实和完善。每年都有新的程序设计语言问世,老的程序设计语言不断地更新换代。 3 20世纪 60年代 , Martin Richards为计算机软件人员在开发系统软件时 , 作为记述语言使用而开发了 BCPL语言 (Basic Combined Program
2、ming Language)。 1970年 ,Ken Thompson在继承 BCPL语言的许多优点的基础上发明了实用的 B语言 。 到了 1972年 , 贝尔实验室的 Dennis Ritchie和 Brian kernighan在 B语言的基础上 ,作了进一步的充实和完善 , 设计出了 C语言 。 当时 , 设计 C语言是为了编写 UNIX操作系统的 。 以后 ,C语言经过多次改进 ,并开始流行 。 C+是在 C语言的基础上发展和完善的 , 而 C是吸收了其它语言的优点逐步成为实用性很强的语言 。 4 C语言的主要特点是: 1、 C语言是一种结构化的程序设计语言 , 语言本身简洁 、 使用
3、灵活方便 。 既适用于设计和编写大的系统程序 , 又适用于编写小的控制程序 , 也适用科学计算 。 2、 它既有高级语言的特点 , 又具有汇编语言的特点 。 运算符丰富 , 除了提供对数据的算术逻辑运算外 , 还提供了二进制的位运算 。 并且也提供了灵活的数据结构 。 用 C语言编写的程序表述灵活方便 ,功能强大 。 用 C语言开发的程序 , 其结构性好 , 目标程序质量高 , 程序执行效率高 。 5 3、 程序的可移植性好 。 用 C语言在某一种型号的计算机上开发的程序 , 基本上可以不作修改 , 而直接移植到其它型号和不同档次的计算机上运行 。 4、 程序的语法结构不够严密 , 程序设计的
4、自由度大 。 这对于比较精通 C语言的程序设计者来说 , 可以设计出高质量的非常通用的程序 。 但对于初学者来说 , 要能比较熟练运用 C语言来编写程序 , 并不是一件容易的事情 。 与其它高级语言相比而言 , 调试程序比较困难 。 往往是编好程序输入计算机后 ,编译时容易通过 , 而在执行时还会出错 。 但只要对C语言的语法规则真正领会 , 编写程序及调试程序还是比较容易掌握的 。 6 随着 C语言应用的推广 , C语言存在的一些缺陷或不足也开始流露出来 , 并受到大家的关注 。 如: C语言对数据类型检查的机制比较弱;缺少支持代码重用的结构;随着软件工程规模的扩大 , 难以适应开发特大型的
5、程度等等 。 7 为了克服 C语言本身存在的缺点 , 并保持 C语言简洁 、 高效 , 与汇编语言接近的特点 , 1980年 , 贝尔实验室的 Bjarne Stroustrup博士及其同事对 C语言进行了改进和扩充 , 并把 Simula 67中类的概念引入到 C中 。 并在 1983年由 Rick Maseitti提议正式命名为 C+( C Plus Plus) 。 后来 , 又把运算符的重载 、 引用 、 虚函数等功能加入到 C+中 , 使 C+的功能日趋完善 。 当前用得较为广泛的 C+有: VC+ ( Visual C Plus Plus) 、 BC+( Borland C Plus Plus) 、AT /从键盘上输入变量 i的值 cout #define PRICE 30 /常量,在程序中保持不变 void main(void) int num, total; /定义变量 ,在内存中开辟区间 num=10; /变量赋值 ,10为常量 total=num*PRICE; cout“total=“total; /输出结果 其中: num=10 total=num*PRICE 是赋值号,不同于数学意义上的等号。 num total 10 300 PRICE 30 30 C+中有多种数据类型,均有常量与变量之分,各占不同的内存空间,正确定义与使用数据是编写程序的基本前提。