




已阅读5页,还剩61页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章数据类型、运算符和表达式,基本数据类型常量和变量输入输出,运算符和表达式数据类型的转换构造数据类型,基本数据类型,整型字符型浮点型,布尔型空型,C+提供的基本数据类型,修饰符,C+还允许在不同的数据类型前面增加修饰符来更改基本类型的含义。signed,unsigned,long和short。其中int前面可以单独使用siged,unsigned,long和short,并且signed和unsigned还可以与long和short组合在一起放在int前面char前面可以单独使用signed和unsigned;double前面可以单独使用long。,C+的数据类型,整型,C+中定义了9种类型的整型,其中包括普通的整型(int)、长整型(longint)和短整型(shortint)。这3种数据类型的前面还可以加上signed和unsigned修饰符来表示有符号整型和无符号整型。,符号整数和无符号整数,#includeusingnamespacestd;voidmain()shortinti;unsignedshortintj;i=-1;j=i;couti=i;j=j;,字符型,在计算机中保存字符采用的是8位的ASCII码。要把字符用单引号扩起来x、0如果所需的整数表示范围很小(在128到127之间,或者在0到255之间),可考虑使用字符型数据,字符型数据和整型数据的互换使用,#includeusingnamespacestd;voidmain()charc;shortinti;c=A;i=c;coutc=c;i=i;,浮点型,浮点型数据有3种:float,double和longdouble。选用的数据类型应该能够表示所需要的数字,不能超出数据类型的表示范围,还要考虑不同的数据类型可以表示数据的精度是否符合程序要求。一种数据类型占用的内存空间越大,能够表示的数据范围就越大,但是使用这样的数字进行计算的速度也越慢,因此在选择数据类型的时候也不要没有任何依据地使用longdouble类型表示数据以求保险(一般的数字用double类型就足够了)或者贪图不必要的精度而损失了程序的运行速度。,浮点数的舍入误差,#includeusingnamespacestd;voidmain()floata,b;a=555555.555e5;b=a+40;couta=a;b=b;,布尔型,true和false如果在布尔表达式中使用了数字,那么C+会把0作为false,非0的数字作为true。如果在一个非布尔表达式中使用bool类型的数据,那么会把true转换为1,把false转换为0。,bool和int类型数据的转换,#includeusingnamespacestd;voidmain()boolb1,b2;inti,j;b1=true;i=20;j=b1;b2=i;coutj=j;b2=b2;,空型,空型是一种十分特别的数据类型,它表示没有任何值,因此并没有一个实际存在的数字可以定义成void类型。空型通常用在定义函数的时候表示一个函数没有返回值。,常量和变量,常量变量,常量,常量是一个具有实际值的量,并且其值在程序中不可以改变。,整型常量,整型常量用于表示整数。可以使用十进制、十六进制、八进制的整数。十进制的数字:10、25。十六进制整数需要在整数的前面加上一个0 x:0 x123八进制数需要在整数的前面加上一个O:O123如果在程序中遇到了一个整数常量,通常认为这个整数的数据类型是int。如果要表示的数字超出了int类型数据的表示范围,但是在unsignedint数据类型的表示范围之内,就在这个数据类型中在数据的后面增加一个u后缀:3213213213u。如果希望定义longint类型的常量,在这个数据后加l后缀。,浮点型常量,如果在程序中遇到的一个数字带有小数部分,那么C+编译器就认为这个数字是一个浮点型常量12.3,1.0,0.123E2浮点型数据具有舍入误差,字符型常量,如果要定义字符型常量,只要用单引号将这个字符括起来就可以了。x、2、#,字符串常量,把字符串用双引号括起来Helloworld!“一个字符串中的各个字符会占用内存中连续的字节,使用0字符表示字符串的结束。a与a完全不同,符号常量,对于一些经常使用并且有特定意义的常量允许采用符号的方式代替,在程序中所有使用这个常量的地方都可以使用这个符号常量进行替代使用C+提供的预编译指令#define#definePI3.14,变量,变量就是可以在程序中保存数据的量。由于这个量的值是可以改变的,因此被称为变量,变量的命名,组成变量名的字符必须是大写字母、小写字母、数字或者下划线,并且只能以字母或者下划线开头。变量名不能使用C+语言保留的关键字,变量的声明,数据类型变量名列表;intCount;doublePrice,Total;所有的变量在声明时都要求指明它的数据类型。,变量的初始化,变量的初始化是指在变量被正式使用之前给变量一个初值。(1)在定义变量时给变量赋一个初值。(2)在使用变量之前给变量赋一个初值。(3)动态初始化。intCount=2;doublePrice,Total;Price=28.7;Total=Price*Count;,常数型变量,使用const关键字创建常数型变量,这样就可以把一个变量作为常数来使用const数据类型变量名=表达式;constfloatPI=3.14;,输入输出,coutcin,流,C+中定义的输入输出都是采用流的方式进行的。在输入操作中,输入数据以字节的形式从输入设备(例如键盘、磁盘、网络等)经过输入流流入计算机的内存;在输出操作中,输出数据又以字节的形式从内存经过输出流流出到输出设备(例如显示器、打印机、磁盘、网络等)。在C+中,可以使用它提供的标准输入对象cin和标准输出对象cout实现输入输出操作。cin表示的是C+的输入流cout表示的是C+的输出流cerr流用于实现标准的出错输出clog流实现cerr流的缓冲输出。,cout,使用操作符来实现输出,的作用是实现向流中插入。inti=10;couti=i;,在输出中使用转义字符,#includeusingnamespacestd;voidmain()coutabcdetfgbhijrkn;coutIsay:hello!n;coutn的意思是回车换行n;,用t和setw()实现输出,#include#includeusingnamespacestd;voidmain()coutabctdefendl;coutghitjklendl;coutsetw(6)abcsetw(6)defendl;coutsetw(6)ghisetw(6)jkl操作符。inta;doubleb;cinab;,输入一个矩形的长和宽,输出矩形的面积,#includeusingnamespacestd;voidmain()doubleLength;doubleWidth;coutLength;coutWidth;coutArea=Length*Width的作用是将一个数的所有位向右移动指定的位数左移位运算符=、首先计算b=12,然后计算c=34,再计算d=56。逗号表达式b=12,c=34,d=56的结果就是最右边的表达式的值56,因此a的值是56。,sizeof运算符,sizeof运算符可以计算出数据类型所占用空间sizeof运算符有两种使用方式:sizeof(数据类型)sizeof变量名,使用sizeof运算符,数据类型的转换,赋值运算中的数据类型转换表达式中的数据类型转换,赋值运算中的数据类型转换,如果把一种类型的数据赋值给另一种类型的变量,那么在赋值的过程中就会发生数据类型的转换。由于各种数据类型所占用的内存空间不同,因此当占用内存空间大的数据类型向占用内存空间小的数据类型转换的时候,会导致高位数据丢失的情况。,数据类型转换导致的错误,表达式中的数据类型转换,在表达式中,如果各个运算对象的数据类型不同,那么C+会自动把它们转换成同样的数据类型再进行计算。在进行类型转换的时候,都是从占用内存空间少的数据类型向占用内存空间多的数据类型进行转换。C+还允许使用强制类型转换来实现显式的类型转换(数据类型)表达式,构造数据类型,结构体共用体枚举自定义数据类型,结构体,将所有相关的数据项组合在一起,形成一种新的数据结构,称为结构体struct结构体名数据类型成员名;.;使用“.”运算符访问一个结构体变量的各个成员,这个运算符称为成员运算符。结构体变量名.成员名,计算一个三角形的面积,共用体,将几个不同数据类型的变量保存到同一个内存空间中,实际上是这些不同数据类型的变量占用从同一个地址开始的内存空间,各个变量相互覆盖。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 甲状腺超声测值课件
- jit教学能力大赛课件
- 新解读《GB-T 36786-2018病媒生物综合管理技术规范 医院》
- 中班数物对应教学课件
- 党史故事课件教学对象
- 用电安全知识培训课件报告
- 用火安全知识培训内容课件
- 生物实验室安全知识培训课件
- 生物安全知识培训课件解答题
- 2024景德镇住房出租合同(30篇)
- 2025年专业士官考试题库
- 院前急救技能大赛
- 2025年事业单位工勤技能-安徽-安徽水土保持工五级(初级工)历年参考题库含答案解析(5卷套题【单选100题】)
- 2024年武汉广播电视台专项招聘真题
- 高血压尿毒症护理查房
- 2025届山东省青岛五十八中高一物理第二学期期末考试试题含解析
- 智能建筑中机器人的应用与装配式施工技术
- 支架术后护理常规课件
- 妇产科子宫脱垂护理查房
- 肿瘤放射治疗护理常规
- 医院培训课件:《基于医院感染防控的安全注射》
评论
0/150
提交评论