c++语言教程 谭浩强
C C++程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
谭浩强 课件制作:福建师范大学 Jerryhuang 1
第一章C++概述 C++语言发展历史 自从1946年第一台电子数字计算机ENIAC 问世以来,随着计算机应用领域的不断扩大, 促进了计算机技术的高速发展,尤其是近年 来计算机的硬件和软件都是日新月异。作为 应用计算机的一种工具―程序设计语言,得 到不断的充实和完善。每年都有新的程序设 计语言问世,老的程序设计语言不断地更新 换代 2
20世纪60年代,Martin Richards为计算机软件人员 在开发系统软件时,作为记述语言使用而开发了BCPL语 言(Basic Combined Programming Language)。1970年, Ken Thompson在继承BCPL语言的许多优点的基础上发 明了实用的B语言。到了1972年,贝尔实验室的Dennis Ritchie和Brian kernighan在B语言的基础上,作了进一步的 充实和完善,设计出了C语言。当时,设计C语言是为了 编写UNIX操作系统的。以后,C语言经过多次改进,并开始 流行。C++是在C语言的基础上发展和完善的,而C是吸 收了其它语言的优点逐步成为实用性很强的语言 3
C语言的主要特点是: 1、C语言是一种结构化的程序设计语言,语言本 身简洁、使用灵活方便。既适用于设计和编写大 的系统程序,又适用于编写小的控制程序,也适 用科学计算。 2、它既有高级语言的特点,又具有汇编语言的特 点。运算符丰富,除了提供对数据的算术逻辑运算 外,还提供了二进制的位运算。并且也提供了灵活 的数据结构。用C语言编写的程序表述灵活方便, 功能强大。用C语言开发的程序,其结构性好,目 标程序质量高,程序执行效率高。 4
3、程序的可移植性好。用C语言在某一种型号的计 算机上开发的程序,基本上可以不作修改,而直接 移植到其它型号和不同档次的计算机上运行。 4、程序的语法结构不够严密,程序设计的自由度 大。这对于比较精通C语言的程序设计者来说,可 以设计出高质量的非常通用的程序。但对于初学者 来说,要能比较熟练运用C语言来编写程序,并不 是一件容易的事情。与其它高级语言相比而言,调 试程序比较困难。往往是编好程序输入计算机后, 编译时容易通过,而在执行时还会出错。但只要对 C语言的语法
规则
编码规则下载淘宝规则下载天猫规则下载麻将竞赛规则pdf麻将竞赛规则pdf
真正领会,编写程序及调试程序 5 还是比较容易掌握的。
随着C语言应用的推广,C语言存在的一 些缺陷或不足也开始流露出来,并受到大
家的关注。如:C语言对数据类型检查的 机制比较弱;缺少支持代码重用的结构;
随着软件工程规模的扩大,难以适应开发 特大型的程度等等 6
为了克服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)、 7 AT&T C++等
简单的C++程序介绍 高级语言编译过程 库文件 (各种函数) 源程序 目标文件 编译 compile 可执行文件 (文本文件) *.CPP (二进制文件) *.OBJ (二进制文件) 连接 link *.EXE F7 在Vitual C++系统中,可直接从源程序编译连接至可执行 程序,但依然要生成*.OBJ及*.EXE这两个文件。 8
一个简单的C++程序 #include<iostream.h> 函数体 开始 主函数 包含文件
void main(void ) 分号,一条完整 语句的结束符 { cout<<“I am a student.\n”; //输出字符串 } 函数体 结束 输出流,在屏幕上打 印引号内的字符串
注释或说明 本程序编译执行后,在DOS屏幕上打印出 I am a student. 9
编译过程: 1)启动Visual C++,选择“文件”菜单中的“新建” 命令,选择“文件”标签中的“C++ Source File” 选项。 2)选择源程序存放的目录和输入源程序名,单击 “确定”。 3)在编辑器中编写源程序。 4)单击F7或“编译”中的“重建全部”编译源程 序,若编译通过,单击“执行”,在DOS屏上看 结果,任按一键返回编辑器。 10
启动VC++ 编译系统 11
单击“File”菜单 中“New”命令 VC++编译 系统界面 12
选择“Files”选项卡 选择C++源 文件命令 输入文件名 输入文件 存放位置
选择驱动 器或目录 单击选择 驱动器 13
输入C++ 源代码 C++源文件 编辑界面 14
可以将此源 代码另起文 件名存盘 15
选择编译命令,将源文 件.cpp生成.obj文件 16
错误所在行 错误的原因 如果编译出错,会出现提示信息, 指出错误的位置
及种类 17
光标移到该行 双击错误 所在行 18
生成可执 行文件 通过后单 击该命令 运行程序 19
运行结果显示 在DOS屏上 注意:不可以在软盘上 运行程序~应该把保存 在软
盘中的源文件拷贝 到硬盘的目录中再运行! 20
未编译前,只 有一个源程序 源程序所在目录 21
编译运行后,出 现众多附加文件 同时,产生一个 子目录Debug 22
Debug目录中,有 obj和EXE文件 23
另一个例子 #include <iostream.h> void main(void) { cout << “i=”; //显示提
示符 int i; //说明变量i cin >>i; //从键盘上输入变量i的值 cout <<
“i的值为:” <<i<<?\n?; // 输出变量i的 值 24
第二章 数据类型、运算符与表达式 25
data Program CPU 运算器 (2000H)+(2002H) 内存 外存 硬盘 软盘
2000H 2001H 2002H 2003H 2004H 3 3+5=? 5 8 内存 用一个字节表示整数,范围为-128~127;用两个字节表 示整数,范围为-32768~ 32767。一般用四个字节表示整 26 数。(举例)
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 有符号数 无符号
数 0 1 1 1 1 1 1 1 1 1 1 1 1 1 11 0 1 1 1 1 1 1 1 1 1 1 1 1 1 10 …… 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01 32767 32767 32766 32766 …… 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
00 0 0 65535 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1(补码) 1 1 1 1 1 1 1 1