基本数据与操作.ppt
《基本数据与操作.ppt》由会员分享,可在线阅读,更多相关《基本数据与操作.ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2 2章章 基本数据与操基本数据与操作作n程序需要用约定的字符集来描述,程序需要用约定的字符集来描述,C+语语言基本上采用言基本上采用ASCII码中的可见字符构成码中的可见字符构成字符集。字符集。2.1 标识符与关键字标识符与关键字2.1.1 标识符标识符n标识符是由程序员为程序中的各种成分:变标识符是由程序员为程序中的各种成分:变量,有名常量,用户定义的类型,枚举类型量,有名常量,用户定义的类型,枚举类型的值,函数及其参数,类,对象等所起的名的值,函数及其参数,类,对象等所起的名字。字。n标识符的组成规则:标识符的组成规则:标识符是一个以字母或下横线标识符是一个以字母或下横线_开头的,由
2、开头的,由字母、数字、下横线组成的字符串字母、数字、下横线组成的字符串.如:如:abcdabcd,c5,_PERSON_H c5,_PERSON_H 都是合法的标识符,都是合法的标识符,而而3A3A,A*B,A*B,43.5A 43.5A 都是不合法的,一个标识符都是不合法的,一个标识符中间不可插入空格。中间不可插入空格。2.1.1 标识符标识符n标识符应与任一关键字有区别,如标识符应与任一关键字有区别,如forfor,if,case if,case 等都不可作标识符。等都不可作标识符。n标识符中字母区分大小写。如标识符中字母区分大小写。如ABCABC与与abcabc,被认为是不同的两个标识符
3、。而关键字是被认为是不同的两个标识符。而关键字是否区分大小写,取决于不同系统定义。否区分大小写,取决于不同系统定义。n标识符具有有效长度,(一般标识符具有有效长度,(一般3232位)在软位)在软件工程中,提倡使用件工程中,提倡使用“匈牙利标记法匈牙利标记法”为为变量起名。变量起名。n尽量不要使用下划线开头的标识符,以免尽量不要使用下划线开头的标识符,以免与系统中预先定义的一些标识符冲突。与系统中预先定义的一些标识符冲突。2.1.2 关键字关键字n关键字是这样一类有特定的专门含义的单关键字是这样一类有特定的专门含义的单词。对于词。对于C+C+语言来说,凡是列入关键字语言来说,凡是列入关键字表的单
4、词,一律不得移作它用。因此,关表的单词,一律不得移作它用。因此,关键字又称为保留字(键字又称为保留字(reserved wordreserved word)。)。n例如在上节的程序中,例如在上节的程序中,void,int,for,if void,int,for,if 等单词就属于关键字。等单词就属于关键字。2.1.2 关键字关键字n关于关于C+C+语言的关键字,有如下说明:语言的关键字,有如下说明:C+C+语言的关键字一般包含了几乎所有的语言的关键字一般包含了几乎所有的C C 语言的关语言的关键字。键字。随着随着C+C+语言的不断完善,其关键字集也在不断变化。语言的不断完善,其关键字集也在不断
5、变化。各不同版本的各不同版本的C+C+语言的实现可能有不少涉及其应用语言的实现可能有不少涉及其应用领域的关键字的设置领域的关键字的设置.n总之,关键字集合是使用总之,关键字集合是使用C+C+语言编程前应首先弄语言编程前应首先弄清楚的,特别是对少数个别的关键字的设置应有清楚的,特别是对少数个别的关键字的设置应有所了解,以免在编程中产生错误,至少应避免在所了解,以免在编程中产生错误,至少应避免在设定标识符时与关键字重名。设定标识符时与关键字重名。2.1.3 基本数据类型基本数据类型nC+是一门强数据类型的语言,每一种数是一门强数据类型的语言,每一种数据一般都严格地对应确定的数据类型。据一般都严格地
6、对应确定的数据类型。nC+的数据类型有基本数据类型和非基本的数据类型有基本数据类型和非基本数据类型之分。数据类型之分。n基本数据类型是基本数据类型是C+内部预先定义的数据内部预先定义的数据类型,非基本数据类型包括指针、数组和类型,非基本数据类型包括指针、数组和结构以及类类型等,非基本数据类型也称结构以及类类型等,非基本数据类型也称用户引入的数据类型。用户引入的数据类型。类类型名型名type 说说明明长长度度 数据范数据范围围 bool布布尔尔逻辑逻辑型型 1 true(1)false(0)char字符型字符型 l-128127 (0255)unsigned char无符号字符型无符号字符型 1
7、 0255 signed char有符号字符型有符号字符型 1 -128127signed short int有符号短整型有符号短整型 2-3276832767unsigned short int无符号短整型无符号短整型 2065535signed int有符号整型有符号整型2/4-3276832767 unsigned int无符号整型无符号整型 2/4 065535 signed long int有符号有符号长长整型整型 4-21474836482147483647 unsigned long int无符号无符号长长型型型型 4 04294967295 float浮点型浮点型 4 3.4*
8、10e-383.4*10e38 double双精度型双精度型 8 1.7*10e-3081.7*10e308long double长长双精度型双精度型8/10至少与至少与double类类型同型同2.2 常量与变量常量与变量n C+C+程序中的常量是指固定不变的量。一般常量程序中的常量是指固定不变的量。一般常量有两种表示形式:一种称为有两种表示形式:一种称为直接常量直接常量,一种称为,一种称为符号常量符号常量。例如圆周率。例如圆周率pai=3.1416pai=3.1416,其中,其中paipai就就是一个符号常量,是一个符号常量,paipai是量是量3.14163.1416的名字,而的名字,而3
9、.1416 3.1416 称为直接常量。称为直接常量。nC+C+程序中符号常量的名字就是一个标识符,而程序中符号常量的名字就是一个标识符,而直接常量是一类特殊的单词,它也是程序所要处直接常量是一类特殊的单词,它也是程序所要处理的数据的值。理的数据的值。n直接常量分为四类:直接常量分为四类:整型常量,浮点型常量,字整型常量,浮点型常量,字符型常量和字符串常量符型常量和字符串常量。2.2.1 整型常量整型常量n整型常量即整型常量即intint型常量,实际上就是整数。型常量,实际上就是整数。C+C+程序中除允许一般的十进制整数之外,程序中除允许一般的十进制整数之外,还允许八进制整数和十六进制整数出现
10、。还允许八进制整数和十六进制整数出现。n例如:例如:cout023“”23“cout023“”23“”0 x23;”0 x23;将输出不同的十进整数:将输出不同的十进整数:1919,2323,3535。2.2.2 浮点型常量浮点型常量n也称为实型常量,是指数据是以浮点方式也称为实型常量,是指数据是以浮点方式存储的。存储的。n小数点表示法:小数点表示法:4.754.75,2.0 2.0 n科学表示法:科学表示法:1.2e4 1.2e4,-7.37e-3-7.37e-3n浮点常量是浮点常量是doubledouble类型类型的常数。的常数。2.2.3 字符型常量与字符串常量字符型常量与字符串常量n1
11、 字符型常量字符型常量用单引号用单引号 括起来的一个字符构成了一个字符常量。括起来的一个字符构成了一个字符常量。字符型常量是字符型常量是char类型的常数。字符型数据总是占用一类型的常数。字符型数据总是占用一个字节并以定点方式存储该字符的个字节并以定点方式存储该字符的ASCII值,因此字符值,因此字符可以被用于描述小的整型数。可以被用于描述小的整型数。表现形式有:表现形式有:n字符字符形式形式n转义字符转义字符 cout“hellonTom”;n十六进制的转义字符十六进制的转义字符如如A的的ASCII值为值为65,若转换为十六进制为,若转换为十六进制为x41n八进制的转义字符八进制的转义字符如
12、:如:!的的ASCII值为值为33,可用,可用41表示。表示。2.2.3 字符型常量与字符串常量(续)字符型常量与字符串常量(续)n2 字符串常量字符串常量用双引号用双引号“”括起来的字符序列构成了一个字括起来的字符序列构成了一个字符串常量。如:符串常量。如:“hello worldn”。一个字符串占用的字节数等于它所包含的字符一个字符串占用的字节数等于它所包含的字符个数加个数加1,对应于每个字符的字节中存放该字符,对应于每个字符的字节中存放该字符的的ASCII值,而多余的一个字节存放值,而多余的一个字节存放0。表示字符串结束。表示字符串结束。注意注意:nA与与“A”的区别。的区别。n与与“”
13、的区别。的区别。2.2.4 符号常量符号常量n1 宏定义宏定义由由C语言延续下来的符号常量表示方法是宏定语言延续下来的符号常量表示方法是宏定义。义。如:如:#define PI 3.14由于宏不能体现数据类型,在一些特殊情况下由于宏不能体现数据类型,在一些特殊情况下可能带来难以察觉的错误,因此,可能带来难以察觉的错误,因此,C+建议用建议用const类型的常量替代它。类型的常量替代它。2.2.4 符号常量(续)符号常量(续)n2 用用const定义常量定义常量语法格式语法格式nconst type 常量名(值)常量名(值)nconst type 常量名常量名=值值定义中的定义中的type可以是
14、任何一种内置类型或自定可以是任何一种内置类型或自定义类型,义类型,省略时表示省略时表示int类型类型。优点:增加了数据类型,使得编译器能够实现优点:增加了数据类型,使得编译器能够实现对类型的核查以消除潜在的错误隐患。对类型的核查以消除潜在的错误隐患。2.2.4 符号常量(续)符号常量(续)n3 使用使用enum定义的枚举常量定义的枚举常量描述一组相关的状态或属性。如若干种颜色等。描述一组相关的状态或属性。如若干种颜色等。格式:格式:enum 枚举类型名枚举类型名 枚举值列表枚举值列表;n如:如:enum Week Sun,Mon,Tues,Sat;n使用:使用:Week aday=Wed;/a
15、day的值只能是的值只能是SunSat之一。之一。n第第1个枚举元素值默认为个枚举元素值默认为0,其他值依次递增。也可,其他值依次递增。也可以指定枚举元素的值。以指定枚举元素的值。n标准标准C+对枚举类型的限制比较严格,如不允许枚举对枚举类型的限制比较严格,如不允许枚举类型的变量进行增减运算等。类型的变量进行增减运算等。2.2.5 变量变量n变量定义隐含内容变量定义隐含内容系统在内存中分配一块存储区系统在内存中分配一块存储区用变量名表示存储在此内存区中的值用变量名表示存储在此内存区中的值n基本形式基本形式type 变量名(初始值);变量名(初始值);type 变量名变量名=初始值初始值;n定义
16、变量时最好为变量提供初始值,否则,定义变量时最好为变量提供初始值,否则,变量的值是难以预料的。变量的值是难以预料的。2.3 简单运算简单运算n运算符和表达式运算符和表达式n算术运算算术运算n赋值类运算赋值类运算n自加和自减运算自加和自减运算n关系运算和逻辑运算关系运算和逻辑运算n位运算位运算nsizeof运算与逗号运算运算与逗号运算2.3.1 运算符和表达式运算符和表达式n运算符运算符的使用含义是由系统预定义好的(注意,的使用含义是由系统预定义好的(注意,C+C+允许用户重定义即重载运算符,从而使它们对允许用户重定义即重载运算符,从而使它们对某些用户自定义类对象可具有另外的用户自定义某些用户自
17、定义类对象可具有另外的用户自定义运算符含义)。通常情况下,运算符所操作的运算符含义)。通常情况下,运算符所操作的运运算对象算对象均为基本数据类型(或其简单派生类型)均为基本数据类型(或其简单派生类型)的具体数据。的具体数据。n通过运算符把运算对象(常量或变量)按照一定通过运算符把运算对象(常量或变量)按照一定的规则连接起来就构成了的规则连接起来就构成了表达式表达式。表达式的表达式的运算运算结果是一个结果是一个“值值”(它将隶属于与运算对象相关(它将隶属于与运算对象相关的某种数据类型)。表达式的求值顺序取决于表的某种数据类型)。表达式的求值顺序取决于表达式中那些达式中那些运算符的优先级运算符的优
18、先级以及以及结合性结合性。n通常,表达式计算后的结果被存储在寄存通常,表达式计算后的结果被存储在寄存器中,如果不保存到某个变量中就会被随器中,如果不保存到某个变量中就会被随后的运算后的运算“冲掉冲掉”。n由于表达式值本身不是保存在内存中,也由于表达式值本身不是保存在内存中,也就不能代表内存变量。就不能代表内存变量。n特殊情况下除外。见特殊情况下除外。见P232.3.2 算术运算算术运算n算术运算包括:单目的单减算术运算包括:单目的单减(-)、增量、增量(+)和减量和减量(-)运算,以及双目的加运算,以及双目的加(+)、减、减(-)、乘、乘(*)、除、除(/)和模和模(%)运算。运算。n1.单目
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基本 数据 操作
限制150内