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