C++1.初识C++

上传人:油条 文档编号:112778549 上传时间:2019-11-07 格式:PPT 页数:100 大小:2.60MB
返回 下载 相关 举报
C++1.初识C++_第1页
第1页 / 共100页
C++1.初识C++_第2页
第2页 / 共100页
C++1.初识C++_第3页
第3页 / 共100页
C++1.初识C++_第4页
第4页 / 共100页
C++1.初识C++_第5页
第5页 / 共100页
点击查看更多>>
资源描述

《C++1.初识C++》由会员分享,可在线阅读,更多相关《C++1.初识C++(100页珍藏版)》请在金锄头文库上搜索。

1、,C+面向对象程序设计 课件制作:南京理工大学 陈清华 朱红 湖南文理学院 武鹤,1,第一章C+概述,2,第一章C+概述,3,第一章C+概述,4,第一章C+概述,1.1 C+语言发展历史,自从1946年第一台电子数字计算机 问世以来,随着计算机应用领域的不断扩大,促进了计算机技术的高速发展,尤其是近年来计算机的硬件和软件都是日新月异。作为应用计算机的一种工具程序设计语言,得到不断的充实和完善。经常有都有新的程序设计语言问世,老的程序设计语言不断地更新换代。,5,20世纪60年代,Martin Richards为计算机软件人员在开发系统软件时,作为记述语言使用而开发了BCPL语言(Basic C

2、ombined Programming Language)。1970年,Ken Thompson在继承BCPL语言的许多优点的基础上发明了实用的B语言。到了1972年,贝尔实验室的Dennis Ritchie和Brian kernighan在B语言的基础上,作了进一步的充实和完善,设计出了C语言。当时,设计C语言是为了编写UNIX操作系统的。以后,C语言经过多次改进,并开始流行。C吸收了其它语言的优点逐步成为实用性很强的语言,C+是在C语言的基础上发展和完善的,。,6,C语言的主要特点是: 1、C语言是一种结构化的程序设计语言,语言本身简洁、使用灵活方便。既适用于设计和编写大的系统程序,又适用

3、于编写小的控制程序,也适用科学计算。,2、它既有高级语言的特点,又具有汇编语言的特点。运算符丰富,除了提供对数据的算术逻辑运算外,还提供了二进制的位运算。并且也提供了灵活的数据结构。用C语言编写的程序表述灵活方便,功能强大。用C语言开发的程序,其结构性好,目标程序质量高,程序执行效率高。,7,3、程序的可移植性好。用C语言在某一种型号的计算机上开发的程序,基本上可以不作修改,而直接移植到其它型号和不同档次的计算机上运行。,4、程序的语法结构不够严密,程序设计的自由度大。这对于比较精通C语言的程序设计者来说,可以设计出高质量的非常通用的程序。但对于初学者来说,要能比较熟练运用C语言来编写程序,并

4、不是一件容易的事情。与其它高级语言相比而言,调试程序比较困难。往往是编好程序输入计算机后,编译时容易通过,而在执行时还会出错。但只要对C语言的语法规则真正领会,编写程序及调试程序还是比较容易掌握的。,8,随着C语言应用的推广,C语言存在的一些缺陷或不足也开始流露出来,并受到大家的关注。如:C语言对数据类型检查的机制比较弱;缺少支持代码重用的结构;随着软件工程规模的扩大,难以适应开发特大型的程度等等。,9,为了克服C语言本身存在的缺点,并保持C语言简洁、高效,与汇编语言接近的特点,1980年,贝尔实验室的Bjarne Stroustrup博士及其同事对C语言进行了改进和扩充,并把Simula 6

5、7中类的概念引入到C中。并在1983年由Rick Maseitti提议正式命名为C+(C Plus Plus)。后来,又把运算符的重载、引用、虚函数等功能加入到C+中,使C+的功能日趋完善。 当前用得较为广泛的C+有:VC+ (Visual C Plus Plus)、 BC+(Borland C Plus Plus)等。,10,简单的C+程序介绍,高级语言编译过程,源程序 (文本文件) *.CPP,目标文件 (二进制文件) *.OBJ,可执行文件 (二进制文件) *.EXE,库文件 (各种函数),在Vitual C+系统中,可直接从源程序编译连接至可执行程序,但依然要生成*.OBJ及*.EXE

6、这两个文件。,F7,compile,link,11,1.2 一个简单的C+程序,#include using namespace std; int main(void ) cout“I am a student.n”; /输出字符串 return 0; ,主函数,函数体开始,函数体结束,输出流,在屏幕上打印引号内的字符串,分号,一条完整语句的结束符,本程序编译执行后,在DOS屏幕上打印出 I am a student.,包含文件,注释或说明,12,编译过程: 1)启动Visual C+,选择“文件”菜单中的“新建”命令,选择“文件”标签中的“C+ Source File”选项。 2)选择源程序

7、存放的目录和输入源程序名,单击“确定”。 3)在编辑器中编写源程序。 4)单击F7或“编译”中的“重建全部”编译源程序,若编译通过,单击“执行”,在DOS屏上看结果,任按一键返回编辑器。,13,启动VC+编译系统,14,VC+编译系统界面,单击“File”菜单中“New”命令,15,选择“Files”选项卡,选择C+源文件命令,输入文件名,输入文件存放位置,单击选择驱动器,选择驱动器或目录,16,C+源文件编辑界面,输入C+源代码,17,可以将此源代码另起文件名存盘,18,选择编译命令,将源文件.cpp生成.obj文件,19,如果编译出错,会出现提示信息,指出错误的位置及种类,错误所在行,错误

8、的原因,20,双击错误所在行,光标移到该行,21,生成可执行文件,通过后单击该命令运行程序,22,源程序所在目录,未编译前,只有一个源程序,23,编译运行后,出现众多附加文件,同时,产生一个子目录Debug,24,Debug目录中,有obj和EXE文件,25,#include using namespace std; int main() int i; /说明变量i cin i; /从键盘上输入变量i的值 cout “i的值为:” in; / 输出变量i的值 return 0;,另一个例子,26,C,1.3 C+对C的扩充,27,+,+,1.3.1 输入输出,1.3 C+对C的扩充,28,输入

9、语句:cin,程序在执行期间,接收外部信息的操作称为程序的输入;而把程序向外部发送信息的操作称为程序的输出。在C+中没有专门的输入输出语句,所有输入输出是通过输入输出流来实现的。,29,要使用C+提供的输入输出时,必须在程序的开头增加一行: #include 即包含输入输出流的头文件“iostream.h”。,30,输入数据的格式、个数和类型必须与cin中所列举的变量类型一一对应。一旦输入出错,不仅使当前的输入数据不正确,而且使得后面的提取数据也不正确。,cina,b;,cina b;,int a, b;,cinab;,31,输出数据 cout 与输入cin对应的输出是cout输出流。,当要输

10、出一个表达式的值时,可使用cout来实现,其一般格式为: cout ; 其中运算符“”称为插入运算符,它将紧跟其后的表达式的值,输出到显示器当前光标的位置。,32,int a=6; float f1=12.4; char s1 =“abcd”; coutatf1ts1endl;,t为转义字符Tab endl为回车或n,显示器,显示器,显示器,6,12.4,abcd,33,指定输出项占用的宽度: 在输出的数据项之间进行隔开的另一种办法是指定输出项的宽度。如上面的两个输出语句可改写为: cout setw(6) isetw(10)jendl;,_ _ _ _ _ 4_ _ _ _ _ _ _ _

11、_12,cout setw(5)msetw(10)j*kendl;,_ _ _ _ 7_ _ _ _ _ _ _ _ 24,其中setw(6)指明其后的输出项占用的字符宽度为6,即括号中的值指出紧跟其后的输出项占用的字符位置个数,并向右对齐。setw是“set width”的缩写。,34,使用setw()应注意以下三点: 1、在程序的开始位置必须包含头文件iomanip.h,即在程序的开头增加: #include ,2、括号中必须给出一个表达式(值为正整数),它指明紧跟其后输出项的宽度。,3、该设置仅对其后的一个输出项有效。一旦按指定的宽度输出其后的输出项后,又回到原来的缺省输出方式。,35,

12、1.3.1 用Const定义常变量,1.3 C+对C的扩充,36,const类型变量,当用const限制说明标识符时,表示所说明的数据类型为常量类型。可分为const型常量和const型指针。,可用const限制定义标识符量,如: const int MaxLine =1000; const float Pi=3.1415926,用const定义的标识符常量时,一定要对其初始化。在说明时进行初始化是对这种常量置值的唯一方法 ,不能用赋值运算符对这种常量进行赋值。如: MaxLine =35;,37,C语言中的写法,#define MaxLine 1000,1.3.3 函数原型声明,1.3 C+

13、对C的扩充,38,float max (float x, float y) float z; z=(xy)? x : y ; return z; ,int main () float a,b, c; float max (float,float); cinab; c=max (a,b) ; cout“The max is”cendl; return 0 ,函数原型说明,函数定义,定义是一个完整的函数单位,而原型说明仅仅是说明函数的返回值及形参的类型。,39,float max (float a, float b);,函数原型说明,函数类型 函数名(参数表:参数类型 参数名);,40,也可以这样

14、写: float max (float , float );,1.3.4 函数的重载,1.3 C+对C的扩充,41,函数的重载,所谓函数的重载是指完成不同功能的函数可以具有相同的函数名。,C+的编译器是根据函数的实参来确定应该调用哪一个函数的。,int fun(int a, int b) return a+b; ,int fun (int a) return a*a; ,void main(void) coutfun(3,5)endl; coutfun(5)endl; ,8,25,42,1、定义的重载函数必须具有不同的参数个数,或不同的参数类型。只有这样编译系统才有可能根据不同的参数去调用不同

15、的重载函数。,2、仅返回值不同时,不能定义为重载函数。 即仅函数的类型不同,不能定义为重载函数,int fun(int a, int b) return a+b; ,float fun (int a,int b) return (float) a*a; ,void main(void) coutfun(3,5)endl; coutfun(3,5)endl; ,43,double sin(double x1,double x2) return x1*x2; double sin(double x,int a) return a+x; void main(void) double x; cinx;

16、 coutsin(x)endl; coutsin(x,x)endl; coutsin(x,10)endl; ,sin(x,x),sin(x,10),不同的参数类型,44,int add(int a,int b,int c) return a+b+c; int add(int a,int b) return a+b; void main(void) cout“3+5=“add(3,5)endl; cout“3+5+8=“add(3,5,8)endl; ,不同的参数个数,45,1.3.6 函数的默认参数,1.3 C+对C的扩充,46,如果有一个函数声明 float area(float r=6.5); 指定了r的默认值,那么调用时不必给出实参的值, area(); 如果不想用默认值,则

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号