C++语言基础.ppt
《C++语言基础.ppt》由会员分享,可在线阅读,更多相关《C++语言基础.ppt(496页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C+语言基础盐城工学院 惠为君C+概述C+的特点发展历史和未来(CC+(AT&T)Java(SUN)C#(MS)与其它语言比较(7点):面向对象的概念:数据的封装和隐藏、继承、多态VC上机过程C+的字符集的字符集26个个小写字母小写字母 abcdefghijklmnopqrstuvwxyz26个个大写字母大写字母ABCDEFGHIJKLMNOPQRSTUVWXYZ10个个阿拉伯数字阿拉伯数字 0123456789 其他符号其他符号+-*/=,._:;?|!#%&()空格空格C+语言使用下列基本字符来构成词法单位:语言使用下列基本字符来构成词法单位:结束第二章:数据类型 运算符 表达式2.1 V
2、C+的数据类型计算机所处理的数据以一定形式存放在内计算机所处理的数据以一定形式存放在内存中,数据的存储方式以及能够进行的合存中,数据的存储方式以及能够进行的合法运算都与数据类型直接相关。法运算都与数据类型直接相关。C+的特的特点之一就是提供了丰富的数据类型,以便点之一就是提供了丰富的数据类型,以便处理各种不同的数据。处理各种不同的数据。数据类型数据类型总是与运总是与运算封装在一起,本质上是面向对象的。算封装在一起,本质上是面向对象的。本本章将简要介绍章将简要介绍C+中的数据类型及相关运中的数据类型及相关运算,以及常量、变量、表达式、语句等,算,以及常量、变量、表达式、语句等,最后介绍简单的输入
3、输出方法。最后介绍简单的输入输出方法。2.1.1 关键字数据类型说数据类型说明符与修饰明符与修饰符符boolcharwchar_tclassconstdoubleenumfloatintlongshortsignedstructunionunsignedvoidvolatile存储类型说存储类型说明符明符autoexterninlineregisterstatic访问说明符访问说明符friendprivateprotectedpublic其它说明符其它说明符asm explicit namespace operator template thistypedeftypenameusingvirt
4、ual 语句与标号语句与标号breakcasecatchcontinuedefaultdoelseforgotoifreturnswitchthrowtrywhile 运算符及逻运算符及逻辑值辑值deletefalsenewsizeoftrue还有一些关键字本书未介绍:还有一些关键字本书未介绍:const_castdynamic_castreinterpret_caststatic_castexportmutabletypeid下面可用一些关键字代替逻辑运算符:下面可用一些关键字代替逻辑运算符:andand_eqbitandbitorComplnotoror_eqXorxor_eqnot_eq
5、2.1.2标识符标识符标识符(标识符(IdentifierIdentifier,ID ID)是程序员定义是程序员定义的的“单词单词”,用来给变量、常量、数据类型、,用来给变量、常量、数据类型、函数等命名。函数等命名。合法标识符合法标识符由由字母或下划线字母或下划线开始开始,由,由字母、字母、数字、下划线数字、下划线组成,其有效组成,其有效长度为长度为1 13131个字个字符符,长度超过,长度超过3131个字符者只识别个字符者只识别前前3131个字符个字符,VC+VC+标识符长度为标识符长度为1 1247247个字符个字符。建议使用有一定含义的英文单词或拼音序建议使用有一定含义的英文单词或拼音序
6、列作标识符,以提高列作标识符,以提高可读性可读性;另外尽量不用下;另外尽量不用下划线或双下划线打头,以免与系统定义的关键划线或双下划线打头,以免与系统定义的关键字冲突。字冲突。ok标识符标识符例例:判断下面哪些是合法的标识符:判断下面哪些是合法的标识符:MyFileSalary94amountvoid94SalarySalary94$amountf3.5Num_of_Student2.1.2结束2.1.3标点符号标点符号标点符号包括标点符号包括:#、()、,、,、:、:、;、;、等。等。标点符号的作用标点符号的作用:有一定的语法意义。如字符和字符串有一定的语法意义。如字符和字符串常量分别用常量
7、分别用和和“”引起来。引起来。对语法符号起分隔作用。如对语法符号起分隔作用。如;等;等2.1.3结束2.1.5C+的基本数据类型的基本数据类型图图2-1C+的的数据结构数据结构实实型型float双精度型双精度型doubleC+的数的数据类型据类型基本数据基本数据类型类型非基本数非基本数据类型据类型数组数组type指针指针type*结构结构struct联合联合union枚举枚举enum类类class整整型型int字符型字符型char逻辑型逻辑型bool无值型无值型void实实型型ok C+C+对基本数据类型也分别进行了封装,称对基本数据类型也分别进行了封装,称为为内置数据类型内置数据类型,内置数
8、据类型不仅定义了数据,内置数据类型不仅定义了数据类型,类型,还定义了还定义了常用操作常用操作。本节仅介绍各种基本。本节仅介绍各种基本数据类型的定义,常用操作将在后面介绍。数据类型的定义,常用操作将在后面介绍。C+C+为强类型语言,所有数据的使用严格遵从为强类型语言,所有数据的使用严格遵从“先说明后使用先说明后使用”的原则,以便编译器进行编译。的原则,以便编译器进行编译。整型整型用来存放整数,整数(有符号的整数)用来存放整数,整数(有符号的整数)在内存中存放的是它的补码,无符号数没有符在内存中存放的是它的补码,无符号数没有符号位,存放的就是原码。整数占用的字节数与号位,存放的就是原码。整数占用的
9、字节数与机型有关,机型有关,3232位机上占用位机上占用4 4个字节。个字节。字符型字符型用来保存字符,存储的是该字符的用来保存字符,存储的是该字符的ASCIIASCII码,码,占用一个字节。如大写字母占用一个字节。如大写字母A A的的ASCIIASCII码为码为6565,在对应的,在对应的一个字节中存放的就是一个字节中存放的就是6565。字符型数据从本质上说也是。字符型数据从本质上说也是整数,可以是任何一个整数,可以是任何一个8 8位二进制整数。位二进制整数。由于汉语系字符很多,用由于汉语系字符很多,用ASCIIASCII字符集处理远远不够,字符集处理远远不够,因此又创立了双字节字符集(因此
10、又创立了双字节字符集(DBCSDBCS:double-byte double-byte character setcharacter set),每个字符用两个字节来编码。为便于),每个字符用两个字节来编码。为便于软件的国际化,国际上一些知名公司联合制定了新的宽软件的国际化,国际上一些知名公司联合制定了新的宽字节字符标准字节字符标准UnicodeUnicode。该标准中所有字符都是双字。该标准中所有字符都是双字节的,不同的语言和字符集分别占用其中一段代码。这节的,不同的语言和字符集分别占用其中一段代码。这种用统一编码处理西文、中文及其它语言符号,就是种用统一编码处理西文、中文及其它语言符号,就是
11、unicodeunicode码。码。C+C+同时也支持宽字符类型(同时也支持宽字符类型(wchar_twchar_t),或),或称双字节字符型称双字节字符型。实型实型和和双精度型双精度型都用来存放实数,两者表示的实数都用来存放实数,两者表示的实数精度不同。实数在内存中以规范化的浮点数存放,包括尾精度不同。实数在内存中以规范化的浮点数存放,包括尾数、数符和阶码。数的精度取决于尾数的位数,数、数符和阶码。数的精度取决于尾数的位数,32位机位机上实型为上实型为23位(因规范化数的数码最高位恒为位(因规范化数的数码最高位恒为1,不必存,不必存储,实际为储,实际为24位),双精度为位),双精度为52位。
12、位。逻辑型逻辑型也称也称布尔型布尔型,其取值为,其取值为true(逻辑真)和(逻辑真)和false(逻(逻辑假),存储字节数在不同编译系统中可能有所不同,辑假),存储字节数在不同编译系统中可能有所不同,VC+6.0中为中为1个字节。布尔型在运算中可以和整型相互转个字节。布尔型在运算中可以和整型相互转化,化,false对应为对应为0,true对应为对应为1或非或非0无值型无值型主要用来说明函数的返回值类型,将在函数一章中主要用来说明函数的返回值类型,将在函数一章中具体介绍。具体介绍。基本数据类型还可以加上一些修饰词,包括:基本数据类型还可以加上一些修饰词,包括:signed(有符号)、(有符号)
13、、unsigned(无符号)、(无符号)、long(长)、(长)、short(短)。参见下表:(短)。参见下表:2.2结束 类类型型名名称称占用字节数占用字节数取取值值范范围围bool布尔型布尔型true,false(signed)char有符号字符型有符号字符型1-128 127unsigedchar无符号字符型无符号字符型10 255(signed)short(int)有符号短整型有符号短整型2-32768 32767unsignedshort(int)无符号短整型无符号短整型20 65535(signed)int(signed)有符号整型有符号整型4-231(231-1)unsigned
14、(int)无符号整型无符号整型40(232-1)(signed)long(int)有符号长整型有符号长整型4-231(231-1)unsignedlong(int)无符号长整型无符号长整型40(232-1)float实型实型4-1038 1038double双精度型双精度型8-10308 10308longdouble长双精度型长双精度型8-10308 10308void无值型无值型0无值无值VC+中所有基本数据类型所有基本数据类型2.1.6 常量在程序的执行过程中,值保持不变的量称为 常量字面常量字面常量,指程序中直接给出的量;,指程序中直接给出的量;常量的值在程序执行过程中保持不变;并且常
15、量的值在程序执行过程中保持不变;并且存储在程序区存储在程序区,而非数据区;,而非数据区;根据取值和表示方法的不同,可分为以下几根据取值和表示方法的不同,可分为以下几种:种:a.a.整形常量整形常量d.d.字符串常量字符串常量c.c.字符型常量字符型常量b.b.实型常量实型常量oka整型常量十进制十进制表示表示法法八进制表示法八进制表示法十六进制表示法十六进制表示法其他表示法其他表示法即整数,可以有多种表示方法:ok 整数的十进制表示方法十进制表示与我们熟悉的书写方式相同。十进制表示与我们熟悉的书写方式相同。如如15 -24ok 整数的八进制表示 八八进进制制表表示示以以0 0开开始始,由由数数
16、字字0 0 7 7组组成成,用用来来表示一个八进制数。表示一个八进制数。如:如:012012/八进制数八进制数1212,即十进制数,即十进制数1010-0655-0655/八进制数八进制数-655-655,即十进制数,即十进制数-429-429ok 整数的十六进制表示 十十六六进进制制以以0X0X(大大小小写写均均可可)开开始始,由由数数字字0 0 9 9和和字字母母A A F F(大大小小写写均均可可)组组成成,用用来来表示一个十六进制数。表示一个十六进制数。以下是一些以下是一些常整数常整数的例子:的例子:0 x32A /0 x32A /十六进制数十六进制数32A32A,即十进制数,即十进制
17、数810810-0 x2fe0 /-0 x2fe0 /十六进制数十六进制数-2fe0-2fe0,/即十进制数即十进制数-12256-12256ok整数的其他表示方法 整整型型常常量量还还可可以以表表示示长长整整数数和和无无符符号号整整数数。长长整整型型常常数数以以 L L 或或 l l 结结尾尾,无无符符号号常常整整数数以以 U U 或或 u u 结结尾尾,以以 U U L L 或或 L L U U(大大小小写写均均可可)结尾则可表示无符号长整型常数。结尾则可表示无符号长整型常数。例如:例如:-84L-84L/十进制长整数十进制长整数-84-84026U026U/八进制表示的无符号整数八进制表
18、示的无符号整数26260X32LU/0X32LU/十六进制表示的无符号长整型数十六进制表示的无符号长整型数3232。整数 结束 b实型常量(1)1)一一般般形形式式与与平平时时书书写写形形式式相相同同,由由数数字字 0 0 9 9和小数点组成和小数点组成。例如:。例如:0.23 -125.76 0.0 .46 -35.0.23 -125.76 0.0 .46 -35.(2)(2)指数形式(也称为科学表示法)指数形式(也称为科学表示法)表示为表示为尾尾数乘以数乘以1010的次方形式,由的次方形式,由尾数尾数、E E或或e e和和阶数阶数组组成成。指数形式要求在。指数形式要求在E E或或e e前面
19、的前面的尾数部分必须尾数部分必须有数字有数字,后面的,后面的指数部分必须为整数指数部分必须为整数。例例 :判断下列表示是否合法判断下列表示是否合法123E12-.34e-2 E4 1.43E3.5 包含小数点和包含小数点和1010的幂的数为实型常量,有的幂的数为实型常量,有两种表示方法:两种表示方法:实数实数 结束结束c字符型常量 字字符符常常量量是是用用单单引引号号引引起起来来的的单单个个字字符符。在在内内存存中中保保存存的的是是字字符符的的ASCIIASCII码码值值。在在所所有有字字符符中中,有有些些是是可可显显示示字字符符,通通常常就就用用单单引引号号引引起起来表示:来表示:a a/字
20、符字符a a /字符字符 44/字符字符4 4 /空格字符空格字符有有些些是是特特殊殊情情况况字字符符,如如不不可可显显示示的的字字符符等等,c+c+使使用用转转义义序序列列表表示示方方法法,如如(祥祥见见表表2-32-3,此处略):此处略):n n/换行换行 /字符字符 字符常字符常 结束结束 d.字符串常量字符串常量与字符型常量的区别字符串常量与字符型常量的区别字符串常量字符串常量aa占两个字节,存放占两个字节,存放aa和和 0 0,值为,值为0 x61000 x6100字符型常量字符型常量aa占一个字节,存放占一个字节,存放aa,值为值为0 x610 x612.3.2结束结束用双引号引起
21、来的若干个字符称为字符串常量用双引号引起来的若干个字符称为字符串常量。例如例如:I am a Chinese.,123,a,:I am a Chinese.,123,a,2 标识符常量及常量说明符const用常量说明符用常量说明符constconst给字面常量起个名字(标识符),给字面常量起个名字(标识符),这个标识符就称为这个标识符就称为标识符常量标识符常量;因为标识符常量的说明和引用形式很像变量,所以也因为标识符常量的说明和引用形式很像变量,所以也称称常变量常变量;例如:;例如:constconst float PI=3.14159;float PI=3.14159;const const
22、 intint Number_of_Student=100;Number_of_Student=100;常变量必须也只能在说明时进行初始化;常变量必须也只能在说明时进行初始化;常变量初始化之后,不允许再被赋值;常变量初始化之后,不允许再被赋值;常变量必须先说明后使用;常变量必须先说明后使用;常变量存储在数据区,并且可以按地址访问,编译时常变量存储在数据区,并且可以按地址访问,编译时系统对常变量进行类型检查。系统对常变量进行类型检查。C+C+建议使用常变量,而尽量不使用字面常量。建议使用常变量,而尽量不使用字面常量。2.3.3结束结束2.1.7 变 量1 1 变量说明变量说明 2 2 变量赋初值
23、变量赋初值 变量变量,在程序中是指可以改变值的量;,在程序中是指可以改变值的量;变量必须用标识符进行标识,称为变量必须用标识符进行标识,称为变量名变量名;变量有变量有类型类型之分,如整形变量、字符变量等;之分,如整形变量、字符变量等;任何变量都必须任何变量都必须先说明后使用先说明后使用;一是便于编译;一是便于编译程序为变量分配空间,二是便于编译时进行语程序为变量分配空间,二是便于编译时进行语法检查;法检查;变量使用的第一步,是给变量赋变量使用的第一步,是给变量赋初始值初始值;ok1变量说明 在在C+C+中,变量说明的一般格式为:中,变量说明的一般格式为:存储类型存储类型数据类型数据类型 变量名
24、变量名1 1,变量名变量名2,2,变量名变量名n n;下面是变量说明的几个例子:下面是变量说明的几个例子:inti,j,k;/说明三个整型变量说明三个整型变量i,j,kfloatx,y,z;/说明三个实型变量说明三个实型变量x,y,zcharc1,c2;/说说明明两两个个字字符符型型变变量量c1,c2doubledx;/说明一个双精度型变量说明一个双精度型变量dx变量说明 结束 2变量赋初值(1 1)变量说明时直接赋初值。变量说明时直接赋初值。例如:例如:intint a=3,b=4,c=5;a=3,b=4,c=5;float x=3.0float x=3.0;(2 2)用用赋赋值值语语句句赋
25、赋初初值值。严严格格的的说说,只只有有前前者可称赋初值者可称赋初值例如:例如:float x,e;float x,e;x=3.5;x=3.5;e=2.71828;e=2.71828;结束 给变量赋初值称为初始化,有两种方法:给变量赋初值称为初始化,有两种方法:2.2 基本运算符对常量和变量进行运算是通过运算符来实现的对常量和变量进行运算是通过运算符来实现的.常量常量和变量通过运算符组成和变量通过运算符组成C+表达式表达式,由表达式再组成由表达式再组成C+语语句句.运算符是完成对运算符是完成对常量和变量进行运算的符号常量和变量进行运算的符号.把参与运把参与运算的对象称为操作数算的对象称为操作数.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 语言 基础
限制150内