第2章基本数据类型与表达式优秀PPT.ppt
《第2章基本数据类型与表达式优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第2章基本数据类型与表达式优秀PPT.ppt(76页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章 基本数据类型与表达式1现在学习的是第1页,共76页2.1 C+的词法记号和标识符的词法记号和标识符2.1.1 C+字符集字符集 u英文字母英文字母:AZ,azu数字字符数字字符:09u特殊字符特殊字符:+-*/%=!#&|_ “;.,()空格空格2现在学习的是第2页,共76页2.1.2 关键字关键字 u什么是关键字?什么是关键字?预先定义好的标识符,预先定义好的标识符,C+编译器对其进编译器对其进行特殊处理。行特殊处理。u如何识别关键字?如何识别关键字?使用使用VC+6.0的编辑环境时,缺省是的编辑环境时,缺省是蓝色蓝色的字符即为关键字。的字符即为关键字。3现在学习的是第3页,共76页
2、2.1.3 标识符标识符 标标识识符符是是程程序序员员声声明明的的单单词词,它它命命名名程程序序正正文文中中的的一一些些实实体体,如如函函数数名名、变变量量名名、类类名名和和对对象象名名等等。C+标识符的构成规则如下:标识符的构成规则如下:(1)不能是不能是C+的关键字;的关键字;(2)第一个字符必须是字母或下划线;第一个字符必须是字母或下划线;(3)其他字符只能是字母、下划线或数字;其他字符只能是字母、下划线或数字;(4)为了方便输入,长度一般不超过为了方便输入,长度一般不超过31个字符。个字符。4现在学习的是第4页,共76页合法的标识符:合法的标识符:apple、_Student、_123
3、、No1、max_num不合法的标识符:不合法的标识符:51job、maxnum、-abc注意:注意:C+的表示符是大小写敏感的,即的表示符是大小写敏感的,即abcABC。5现在学习的是第5页,共76页2.1.4 分隔符分隔符 分分隔隔符符用用于于分分隔隔程程序序中中的的正正文文,在在C+中中使使用用下下列列字字符作为分隔符:符作为分隔符:(),:;这这些些分分隔隔符符不不表表示示实实际际的的操操作作,仅仅用用于于构构造造程程序序。比如比如“;”,用来作为一句完整语句的结束。,用来作为一句完整语句的结束。2.1.5 空白空白 在在C+语语句句中中经经常常出出现现空空白白(制制表表符符、空空格格
4、、空空行行)等,通常都忽略不计。等,通常都忽略不计。6现在学习的是第6页,共76页2.2 基本数据类型基本数据类型什么是数据类型?什么是数据类型?数据是程序处理的对象,数据根据其本身的特数据是程序处理的对象,数据根据其本身的特点进行分类,从而形成不同的数据类型。点进行分类,从而形成不同的数据类型。例如:数学中有自然数、整数、实数例如:数学中有自然数、整数、实数基本数据类型基本数据类型整型:整型:int字符型:字符型:char、wchar_t实型:实型:float、double逻辑型:逻辑型:bool7现在学习的是第7页,共76页自定义数据类型自定义数据类型数组:数组:type 指针:指针:ty
5、pe*引用:引用:type&空类型:空类型:void结构:结构:struct联合:联合:union枚举:枚举:enum类:类:class8现在学习的是第8页,共76页修饰符?修饰符?在在C+中描述为了更加准确的描述数据类型,提中描述为了更加准确的描述数据类型,提供了供了4个关键字用来修饰基本的数据类型:个关键字用来修饰基本的数据类型:1、长型、长型long 2、短型、短型short 3、有符号、有符号signed4、无符号、无符号unsigned1、short:仅用来修饰仅用来修饰int,称为短整型,占,称为短整型,占2字节内存,也可字节内存,也可直接简写为直接简写为short;9现在学习的是
6、第9页,共76页2、long:仅修饰仅修饰int和和double,因为在不同的编译环境,因为在不同的编译环境中使用中使用long修饰的数据所占内存不同,这里列修饰的数据所占内存不同,这里列出的是在出的是在VC+6.0的环境下的。的环境下的。3、unsigned:用来修饰用来修饰char、short和和int,表示该数据类型为,表示该数据类型为无符号数。无符号数。4、signed:用来修饰用来修饰char、short和和int,表示该数据类,表示该数据类型为有符号数,为缺省设置。型为有符号数,为缺省设置。10现在学习的是第10页,共76页数据类型和内存空间数据类型和内存空间 不同的数据类型,加上
7、不同的修饰符就具有不同的数据类型,加上不同的修饰符就具有了不同的特点,在内存中占用的空间也不同,因了不同的特点,在内存中占用的空间也不同,因而其所能表示的数值范围也不尽相同。而其所能表示的数值范围也不尽相同。内存单元的单位是字节,因此用来表示数据类内存单元的单位是字节,因此用来表示数据类型的长度的单位也是字节。型的长度的单位也是字节。注意注意:整型整型int的长度等于机器的字长:的长度等于机器的字长:16位机:位机:int=2字节;字节;32位机:位机:int=4字节。字节。但是但是short和和long表示的数据长度是固定的,任表示的数据长度是固定的,任何支持标准何支持标准C+的编译器都是如
8、此,因而如果需要编写的编译器都是如此,因而如果需要编写可移植性好的程序,应将整型声明为可移植性好的程序,应将整型声明为short或或long。11现在学习的是第11页,共76页数据类型标识符数据类型标识符字节数字节数数值范围数值范围常量写法举例常量写法举例char1-128127A,0,nsigned char1-12812756unsigned char10255100short int2-3276832767100signed short int2-3276832767-3456unsigned short int20655350 xffint4-214748364821474836471
9、000signed int4-21474836482147483647-123456unsigned int4042949672950 xffffC+的基本数据类型的基本数据类型 12现在学习的是第12页,共76页数据类型标识符数据类型标识符字节数字节数数值范围数值范围常量写法举例常量写法举例long int4-2147483648 2147483647-123456signed long int4-2147483648 2147483647-3246unsigned long int 404294967295123456float4(3.4E-383.4E38)2.35,-53.231,3E
10、-2 double8(1.7E-3081.7E30812.354,-2.5E10long double10(1.2E-493 21.2E4932)8.5E-300C+的基本数据类型的基本数据类型 13现在学习的是第13页,共76页例题例题:编写一个程序,输出基本数据类型编写一个程序,输出基本数据类型char,int,float,double,bool的长度。的长度。/输出基本数据类型的长度输出基本数据类型的长度#include using namespace std;void main()cout“char:”sizeof(char)“字节字节n;coutint:sizeof(int)字节字节
11、n;coutfloat:sizeof(float)字节字节n;coutdouble:sizeof(double)字节字节n;coutbool:sizeof(bool)字节字节n;14现在学习的是第14页,共76页2.3 变量和常量变量和常量2.3.1 变量变量 程程序序所所处处理理的的数数据据不不仅仅分分为为不不同同的的数数据据类类型型,而而且且每每种种类类型型的的数数据据还还分分为为变变量量和和常常量量。程程序序在在运运行行中中就就是是通过这些变量和常量来操作数据的。通过这些变量和常量来操作数据的。什么是变量?什么是变量?在在C+中,变量是存储信息的地方。变量的实质是内中,变量是存储信息的地
12、方。变量的实质是内存中的一个地址空间,在这个地址空间中可以进行数据的存中的一个地址空间,在这个地址空间中可以进行数据的存储和读取。存储和读取。15现在学习的是第15页,共76页变量定义的格式:变量定义的格式:数据类型数据类型 变量名变量名1,变量名,变量名2,变量名变量名n;例如:定义各种类型的变量例如:定义各种类型的变量 int num;float f;char ch;short s;double area,length;说明:说明:在创建或定义变量时,需要指明该变量在创建或定义变量时,需要指明该变量的的数据类型数据类型和和名称名称。16现在学习的是第16页,共76页数据类型:决定变量的存储
13、方式和可以进行的操作;数据类型:决定变量的存储方式和可以进行的操作;变量名称的定义遵循标识符定义的规则,实际上变量变量名称的定义遵循标识符定义的规则,实际上变量名称就是其中一种标识符。常用的命名约定有三种:名称就是其中一种标识符。常用的命名约定有三种:变量名称:用来区分不同的变量。变量名称:用来区分不同的变量。变量一旦被定义,则系统自动为其分配应占的内存。变量一旦被定义,则系统自动为其分配应占的内存。1、Unix环境常用的命名法环境常用的命名法 my_age、num_of_student 2、驼峰式命名法、驼峰式命名法 myAge、numOfStudent17现在学习的是第17页,共76页 3
14、、匈牙利标记法、匈牙利标记法 iMyCar、ipMyCar、bIsRight例如:例如:unsigned short age;age=18;或者或者 unsigned short age=18;给变量赋值给变量赋值使用赋值运算符使用赋值运算符“=”可以将一个值赋给变量。可以将一个值赋给变量。特性:特性:变量可以被多次赋值,但每次赋值后,原值都变量可以被多次赋值,但每次赋值后,原值都会被新值覆盖。会被新值覆盖。18现在学习的是第18页,共76页例例2.2:赋值运算符的使用:赋值运算符的使用#include using namespace std;void main()intmyAge=18;co
15、ut“myAge=”myAgeendl;myAge=20;cout“myAge=”myAgeendl;运行结果:运行结果:myAge=18myAge=2019现在学习的是第19页,共76页例如:例如:typedef unsigned int UINT;UINT a,b,c;typedef为已有的数据类型定义一个同义词,或者叫做别名。为已有的数据类型定义一个同义词,或者叫做别名。注意:注意:使用使用typedef定义同义词时并不分配内存空定义同义词时并不分配内存空间。间。typedef 原类型名原类型名 新类型名新类型名;与与 unsigned int a,b,c;效果完全相同。效果完全相同。2
16、0现在学习的是第20页,共76页2.3.2 常量常量 1.符号常量符号常量代表一个固定不变值的名字;代表一个固定不变值的名字;严格来说,常量又分成符号常量和常数。严格来说,常量又分成符号常量和常数。C+中提供了一个关键字中提供了一个关键字const,用来区分常量和变,用来区分常量和变量。并且由于常量代表一个固定的值,并且该值在程序量。并且由于常量代表一个固定的值,并且该值在程序运行过程中不能够被改变,所以要求运行过程中不能够被改变,所以要求常量在定义的时候常量在定义的时候必须进行初始化必须进行初始化。const 数据类型数据类型 常量名常量名=常量值常量值;const float PI=3.1
17、4159;21现在学习的是第21页,共76页define关键字关键字在在C语言中使用预编译指令语言中使用预编译指令#define也能够定义常量。也能够定义常量。该语句属于预编译指令,不属于该语句属于预编译指令,不属于C+语句,因而行语句,因而行尾不需要使用分号。并且由于尾不需要使用分号。并且由于C+是向下兼容的,因而是向下兼容的,因而C语言的程序能够在语言的程序能够在C+的编译器下顺利运行。的编译器下顺利运行。但是在但是在C+编程中,建议使用编程中,建议使用const替代替代#define定义常量。定义常量。#define PI 3.1415922现在学习的是第22页,共76页2.整型常数整型
18、常数十进制数:十进制数:100 整型常数可以用后缀字母表示类型。如:整型常数可以用后缀字母表示类型。如:用用U或或u表示无符号整型,如表示无符号整型,如65535U。默认的是默认的是int型。型。八进制数:八进制数:0144十六进制数:十六进制数:0 x64 说明说明:在:在C+中,十进制数有正负之分,但八进制数中,十进制数有正负之分,但八进制数和十六进制数只能表示无符号数。和十六进制数只能表示无符号数。用用L或或l表示长整型。表示长整型。23现在学习的是第23页,共76页3.实型常数实型常数小数形式:小数形式:0.123、23.12 整型常数可以用后缀字母表示类型。如:整型常数可以用后缀字母
19、表示类型。如:可用后缀可用后缀F(f)表示实数常数为)表示实数常数为float型。型。默认的是默认的是double型。型。指数形式:指数形式:123e5或或123E5注意注意:e前面必须有数字,前面必须有数字,e后面必须是整数后面必须是整数用用L或或l表示表示long double型。型。24现在学习的是第24页,共76页4.字符常数字符常数(1)、用单引号扩起来的一个字符。、用单引号扩起来的一个字符。除此以外,还有一些不可显示的特殊字符,如:除此以外,还有一些不可显示的特殊字符,如:a?(2)、转义字符、转义字符 以以开头的字符序列,代表特殊的意义。开头的字符序列,代表特殊的意义。n t ”
20、25现在学习的是第25页,共76页 反斜杠还可以和八进制数或十六进制结合起来表示反斜杠还可以和八进制数或十六进制结合起来表示相应的相应的ASCII码。表示形式如下:码。表示形式如下:ddd 13位八进制数位八进制数 xhh 12位十六进制数位十六进制数 char ch1=a,ch2=97,ch3=064;原因:原因:在内存中,字符数据以在内存中,字符数据以ASCII码存储,码存储,即以整数表示,所以,即以整数表示,所以,C+中字符数据和整数可中字符数据和整数可以相互赋值。以相互赋值。字符变量:字符变量:26现在学习的是第26页,共76页例:字符数据和整型数据的转换例:字符数据和整型数据的转换#
21、include using namespace std;void main()int n=a;char ch=97;cout”输出内容:输出内容:”nendl;cout”输出内容:输出内容:”chendl;运行结果:运行结果:输出内容:输出内容:97输出内容:输出内容:a注注意意:变变量量在在输输出出时时,根根据据其其本本身身的的数数据据类类型型进进行行输出。输出。27现在学习的是第27页,共76页5.字符串常量字符串常量由一对双引号括起来的字符序列。由一对双引号括起来的字符序列。“how do you do?”“hello world!”注意:没有字符串变量。注意:没有字符串变量。可用字符数
22、组实现。可用字符数组实现。28现在学习的是第28页,共76页思考:思考:字符串字符串“x07Operatingtsystem”有几个有几个字符?显示结果如何?字符?显示结果如何?6.逻辑型常数逻辑型常数 逻辑型常数只有两个:逻辑型常数只有两个:false(假)和(假)和true(真)。(真)。在显示器上显示为在显示器上显示为0和和1。29现在学习的是第29页,共76页2.4 运算符和表达式运算符和表达式程程序序中中对对数数据据进进行行的的各各种种运运算算是是由由运运算算符符来来决决定定的的,不不同同运运算算符符的的运运算算方方法法和和特特点点是是不不同同的的,从从此此可可以以看看出出,一一个个
23、运运算算式式子子中中要要涉涉及及到到数数据据及及运运算算符符,而而运运算算符是对数据进行指定操作,并产生新值的特殊符号。符是对数据进行指定操作,并产生新值的特殊符号。2.4.1 表达式表达式在在C+语语言言中中将将变变量量、常常量量和和运运算算符符有有机机结结合合在在一一起起组组成成的的就就是是表表达达式式,利利用用表表达达式式C+可可以以进进行行复复杂杂的运算和处理。的运算和处理。定义:表达式是定义:表达式是操作符操作符、操作数操作数和和标点符号标点符号组成的序组成的序列。并且总能返回一个值,作为表达式的结果。列。并且总能返回一个值,作为表达式的结果。30现在学习的是第30页,共76页 3.
24、2 /简单表达式,值为简单表达式,值为3.2 2+3 /常量表达式,值为常量表达式,值为5 a /简单表达式,值为变量简单表达式,值为变量a的值的值 x=(a+b)*c;/较为复杂的表达式较为复杂的表达式表表达达式式是是可可以以嵌嵌套套的的,比比如如y=x=a+b,该该表表达达式式先先将将a和和b进进行行相相加加,然然后后将将结结果果赋赋值值给给x,再再将将x=a+b的的值值赋给赋给y。2.4.2 语句和块语句和块C+中中所所有有的的操操作作运运算算都都通通过过表表达达式式来来实实现现。由由表表达达式式和和结结尾尾的的“;”组组成成一一个个C+语语句句;多多条条C+语语句句通通过过大大括号括号
25、 括起来,组成一个块语句,例:括起来,组成一个块语句,例:31现在学习的是第31页,共76页一般来说属于同一个逻辑关系的多条语句组成块语句。一般来说属于同一个逻辑关系的多条语句组成块语句。2.4.3 运算符运算符运算符具有运算符具有优先级优先级和和结合性结合性。优优先先级级:级级别别高高的的先先运运算算,级级别别低低的的后后运运算算。例例如如:*/高于高于+-结结合合性性:自自左左向向右右结结合合还还是是自自右右向向左左结结合合。例例如如:1+2+3,+自左向右结合。自左向右结合。int temp=x;x=y;y=temp;32现在学习的是第32页,共76页33现在学习的是第33页,共76页根
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 基本数据类型与表达式优秀PPT 基本 数据类型 表达式 优秀 PPT
限制150内