您好,欢迎访问三七文档
1•1.1C++语言简介•1.2面向对象程序设计的三个主要特征•1.3C++语言的词法•1.4C++程序的结构特点与书写格式•1.5C++程序的实现本章主要内容21.1.1C语言•C++语言是从C语言发展演变而来的,因此在介绍C++语言之前,我们首先介绍一下C语言。1972年至1973年间,美国贝尔实验室的Denis.M.Ritchie在一台DECPDP-11计算机上实现了基于B语言的最初的C语言。C语言的产生基于两个方面的需要:一是为满足UNIX操作系统开发的需要;二是为拉近高级语言与硬件之间距离的需要。3C语言具有以下特点:•1、语言简洁、紧凑,使用方便、灵活。•2、运算符和数据类型丰富。•3、能直接访问物理地址、能进行位操作,具有汇编语言的某些功能。•4、生成的目标代码质量高、程序运行效率高。•5、具有良好的可读性和可移植性。4C语言的局限性•1、数据类型检查机制相对较弱,这使得程序中的一些错误不能在编译阶段被发现。•2、C语言本身几乎没有支持代码重用的语言结构,因此,一个程序员精心设计的程序很难为其它程序所用。•3、当程序段规模打到一定程度时,程序员很难控制程序的复杂性。5他是谁?1980年,贝尔实验室的BjarneStroustrup开始对C进行改进和扩充。1983年正式命名为C++。在经历了3次C++修订后,1994年制定了ANSIC++标准的草案。以后又经过不断完善,成为目前的C++。Dr.BjarneStroustrup美国Bell公司大规模编程研究中心主任,C++语言的设计创建人。6•••1、保持与C兼容•2、可读性好,代码结构更合理•3、生成代码质量高•4、可重用性、可扩充性、可靠性有所提高•5、支持面向对象的机制C++的特点7◆C++语言与C语言的本质区别—支持面向对象的程序设计◆C++语言与C语言的关系C++语言C语言※保持与C语言的相兼性※是C语言的一个超集※支持面向对象程序设计的语言支持面向过程的程序设计语言学好C++语言的关键掌握好面向对象的程序设计思想81.2面向对象程序设计的三个主要特征•什么是面向对象?按人们认识客观世界的系统思维方式,采用基于对象的概念模型模拟客观世界,来分析、设计、实现软件的方法,称为面向对象的程序设计方法。9与面向对象程序设计的有关概念:一、面向对象的核心概念二、面向对象的三大特征对象的概念类的概念封装性继承性多态性101.对象的概念•对象是对客观世界中实际存在的某中事物的抽象,即是描述客观事物的一个实体。请记住:对象:世界的万事万物都是由对象构成的!无形的东西:如:时间虚拟的东西有形的东西112.类的概念•对象的分类(类的概念):•把所有具有相同特征和行为的对象的集合。例如:张三、李四归为“人”类。地球、火星归为“行星”类。某个时刻12:00、13:00归为“时间”类。12类与对象的关系•类是对象的抽象,对象是类的具体实现•如:“学生”是一个类,张三是一个学生,则张三是学生类的一个实例。13面向对象的三大特征之一------封装•封装特征:•对象将自己的行为细节隐蔽起来,只向外部提供可以操纵的接口。汽车内部的悬挂传动机构14面向对象的三大特征之一------继承•继承特征:•一种类型的东西可以是属于更高一层类型,即层次性(包含性)。例如:轿车属于汽车类,也就是说轿车包含在汽车类中,轿车继承了汽车的一般特性,只需描述轿车所特有的性能就可以了。15面向对象的三大特征之一------多态•如:给不同的对象猫和狗发送一个消息“叫一个”,多态特征:所谓多态,既是事物的多种形态;发送同一消息,会获得不同的行为回应。叫一个听听叫一个听听行为不同,是多态的表现161.3C++的词法及词法规则一、C++的字符集字符是一些可以区分的最小符号,C++的字符集由下列字符组成。1、大小写英文字母A~Z,a~z2、数字字符0~93、特殊字符空格!#%^&*_(下划线)-+=~/\|.:,;?‘“()[]{}17二、单词及词法规则单词是由若干个字符组成的具有一定意义的最小词法单元。C++语言中的单词有以下几种:1、标识符标识符是程序员定义的单词,用它来命名程序中的一些实体,比如:函数名,变量名,常量名,对象名等。C++规定,标识符是由大小写字母、数字、下划线组成,并且以字母或下划线开始。下面是一些合法的标识符:hellothis_isf1car2(√)下面是一些非法的标识符:012@syspay.duethis-is(×)18定义标识符时要注意如下几点:(1)标识符中大小写字母是有区别的。(2)在实际应用中,尽量使用有意义的单词作标识符。(3)用户定义标识符时,不能使用系统的关键字。(4)标识符不能以数字开头,不能含有空格键。(5)尽量不要使用l(L),I(i),o(O)等作为标识符.192、关键字(保留字)关键字是系统已预定的单词,用户不可重新定义。例如:intcharfloatdoubleifdoforwhileclassthisvoidbreakelseconstcontinuedefault20•3、运算符•+-*/!&等。•4、分隔符•即标点符号:空格符逗号,分号;冒号:•5、常量•常量是在程序中直接使用符号表示的数据。•6、注释符:/*和*/块注释符•//单行注释符211.4C++程序的结构特点与书写格式一、一个简单的C++示范程序#includeiostream.hvoidmain(){cout“大家好!很高兴认识你们.”endl;}预处理命令主函数语句22例1.1键盘输入a、b、c三个整数,屏幕显示其中的最大数。编程思路:第一步:设置a、b、c三个整型变量,键盘输入a、b、c三个整数。第二步:采用类似于“打擂台”的方式求a、b、c三个数的最大值max。1)先让a做擂主:假定a是最大值,即max=a;2)b数据攻擂:如果b的值大于max值,则max的值必须更换为b的值;3)c数据攻擂:如果c的值大于max值,则max的值必须更换为c的值;第三步:屏幕显示max的值。23参考程序•#includeiostream.h•voidmain()•{inta,b,c,max;•couta=;•cina;•coutb=;•cinb;•coutc=;•cinc;•max=a;•if(bmax)max=b;•if(cmax)max=c;coutmax=max;•}24【例1.2】键盘输入圆的半径r,屏幕显示其圆的面积值。•编程思路:•第一步:定义一个函数Area,它通过圆半径r参数计算圆•面积值。•第二步:定义一个主函数main(),它首先提示用户输入圆•半径值,然后调用计算圆面积的函数Area,最后显示圆•的面积值。25参考程序•#includeiostream.h•doubleArea(doubler)//定义函数Area,计算半径为r的圆面积值•{return3.1416*r*r;}•voidmain()•{doubleradius,area;//定义标识符radius,area•coutradius=?;//屏幕显示radius=?•cinradius;//键盘输入radius的值•area=Area(radius);//调用计算圆面积函数Area•cout“area=”area;//输出圆的面积•}261、预处理命令以“#”开头的命令,如#includeiostream其中,include是关键字2、输入和输出cout(插入符)cin(提取符)3、函数C++程序可由若干个函数组成,但必须要有并且只有一个主函数main().4、语句语句是组成程序的基本单元,函数是由若干条语句组成,每条语句是以分号结束的。5、变量1.4.2C++程序的基本组成271.4.3C++程序的书写格式书写格式:•优秀程序员的素质之一:•1.一个简单语句占一行•2.{}对齐•3.使用TAB缩进•4.有足够的注释•5.有合适的空行voidmain(){inti,j,sum;sum=0;for(i=1;i10;i++){for(j=1;j10;j++){sum+=i*j;}}coutsumendl;}28程序的编辑、编译和运行VC++6.0的集成开发环境上机步骤1.5C++程序的实现29C++程序的编辑、编译、运行•源程序(.CPP)目标程序(.OBJ)可执行文件(.EXE)磁盘中的#include文件C++库文件编译器连接器1、C++源程序的实现一般都经历编辑、编译(含连接)、运行这三个步骤。30工作区窗口菜单栏工具栏标题栏程序窗口输出窗口状态栏VisualC++开发环境VISUALC++6.0的集成开发环境311、菜单功能在VC开发环境界面中有一系列的菜单,每一个菜单下都有各自的菜单命令。而了解一下各菜单命令的基本功能是很有必要的。VC的菜单栏如图所示。文件显示编辑插入编连窗口项目工具帮助VISUALC++6.0的集成开发环境32一、File菜单选择打开最近的工作区打开一个已有的项目保存当前项目关闭当前项目选择打开最近的工作区文件33二、Project菜单激活指定项目将组件或外部的源文件添加在当前的项目中修改当前编译和调试项目一些设置将项目加入到项目工作区中34三、Build菜单重新编连整个项目文件生成应用程序的EXE文件编译C或C++源代码文件执行应用程序352、项目和项目工作区大多数WIN32应用程序除了有许多源代码之外,还包含了菜单、工具栏、对话框、图标等许多资源,而这些资源通常用资源文件保存起来。另外,还需包含应用程序源代码文件编连时所需要的库文件、系统DLL文件等。而项目则用来有效地组织这些文件并维护各源文件之间的依赖关系。36在VC++项目中通过采用文件夹方式来管理所有文件。它将项目名作为文件夹名,在此文件夹下包含了源代码文件(.cpp,.h)、项目文件(.dsp)、项目工作区文件(.dsw)及相应的调试或发行、资源等子文件夹Ex_Sdi文件夹Res文件夹Debug或Release文件夹编连过程产生的文件其他资源Ex_Sdi.rc2等类文件.cpp.h资源文件Ex_Sdi.rc项目及项目工作区文件运行文件Ex_Sdi.exe图标文件Ex_Sdi.ico等工具栏资源Toolbar.bmp2、项目和项目工作区37a)File-new-project,弹出Newproject对话框。b)在“Projects”中选择项目类型为“win32consoleapplication”。在“projectname”中输入所指定的项目名。在location选框内输入项目文件所在的路径名。c)在随着弹出的step对话框中选择anemptyproject项,再finish结束。上机步骤一、创建一个新的项目文件38上机步骤39上机步骤401)Project-addfiletoproject-new,弹出new框。二、向项目文件中新建或添加已有源文件2)在Files页面中选“c++sourcefile”,并填入源文件名,新建一个源文件。3)或选Files项弹出Insertfileintoproject框,将已有源文件添加到项目中。上机步骤41上机步骤42上机步骤43上机步骤441)Build-buildall,生成与项目文件名同名的可执行文件。2)再用execute*.exe命令执行。示例三、编译、连接并运行项目文件CompileBuildExecuteInsertBreakpointGoStopBuild上机步骤45Step1:编辑源程序Step2:编译源文件Step3:构建目标文件Step4:执行EXE文件上机步骤46提示:在菜单栏或工具栏的空白处单击鼠标右键,然后在一个弹出式菜单中选择要显示或隐藏的工具栏。工具栏的显示和隐藏47本章小结•主要内容:•★C++语言发展历史(了解)•★C++的词法与词法规则(重点,掌握)•★C++程序的实现(难点,掌握)•知识点:•1、C++是一种面向对象的程序设
本文标题:第1章C 语言概述
链接地址:https://www.777doc.com/doc-3165717 .html