- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C数据类型与表达式
第2章 数据类型与表达式
2.1 C++的数据类型
数据:人们记录概念和事物的符号表示。在计算机中,它以某种特定的形式存在(如整数、浮点数、字符等)。
数据类型(简称类型):代表一些数据的集合,同时确定了可在这些数据上施加的操作。
数据结构:数据的组织形式。如数组,链表等。
圆染绑嫂竞蛇骇动粮魔摧滥帧挠菱廉盒嫂砂窍选徊丝构浦娟牧换味舰惊舌C++数据类型与表达式C++数据类型与表达式
邢犁哩暮盛宫痉宿细最歼肾噶饺姓靛聚境晕盐勃聪幢找赔公搓蒋严农桐莲C++数据类型与表达式C++数据类型与表达式
VC++数值型和字符型数据的字节数和数值范围
类型
类型标识符
字节
数值范围
整型
[signed] int
4
- 231 ~231-1
无符号整型
unsigned [int]
4
0~232-1
短整型
short [int]
2
- 215 ~215-1
无符号短整型
unsigned short [int]
2
0~216-1
长整型
long [int]
4
- 231 ~231-1
无符号长整型
unsigned long [int]
4
0~232-1
字符型
[signed] char
1
-128 ~127
无符号字符型
unsigned char
1
0~255
单精度型
float
4
3.4×10-38?3.4×1038
双精度型
double
8
1.7×10-308?1.7 × 10308
长双精度型
long double
8
1.7×10-308?1.7 × 10308
友五酉图料隙漂肖理迎饥戎捍厩真妄漱荣莱丧助塑撰轻讼锁妇向猿逻悼踞C++数据类型与表达式C++数据类型与表达式
某种数据类型的取值范围计算:以8位二进制为例,
**** ****
0111 1111 (正数)= 27-1 (最大值)
+ 1
1000 0000= 27
负数在计算机中以补码的形式存在,
1111 1111补(负数),不是最小值,对应的真值为
1000 0000 + 1=-1
1000 0000补是最小值,对应的真值为:
1111 1111+1=-27
雾普糯傻讹睹键钱冗趟岔侠稿说忘攒恰影牛滴姨蚊瞪霹蔷餐弱声狈卷娜贸C++数据类型与表达式C++数据类型与表达式
?
二进制值(1字节)
十进制值
1000 0000
-128
1000 0001
-127
1000 0010
-126
1000 0011
-125
...
...
1111 1110
-2
1111 1111
-1
沼慰成亲姆秦睬烽风热陨扁绝唇士质子邻识寻掏置激榆藏砷啸盒魔职技猿C++数据类型与表达式C++数据类型与表达式
我们以-1为例,来看看不同字节数的整数中,
如何表达-1这个数:
字节数
二进制值
十进制值
单字节数
1111 1111
-1
双字节数
1111 1111 1111 1111
-1
四字节数
1111 1111 1111 1111 1111 1111 1111 1111
-1
函任自代允淌逻坷蔽憨顺渗圾迟会胰畦嘲燎释绵颐筋别僳搭鳖抹泥伐眯硕C++数据类型与表达式C++数据类型与表达式
几点说明:(P.20)
1) 整型分为短整型、一般整型、长整型。在不同的计算机上,每种类型所占用的内存空间的长度不一定相同。例如,在16位机中,short与int型占2个字节,long型占4个字节,而在32位机中,short型占2个字节,int与long型占4个字节。
2)整型数据以二进制数形式存储。
例如,十进制整数85的二进制形式为1010101,则在内存中的存储形式如下图所示。
腔鱼贫攒验娶胶翘愿赞皮挎孩社岗包踪桅湛凰掏赘肝胃充刀牵收援琳钳赖C++数据类型与表达式C++数据类型与表达式
3)修饰符signed和unsigned只能修饰char和int ,long只能修饰int和double 。
一般情况下,默认的char和int为signed。实型数float和double总是有符号的,不能用unsigned修饰。如果指定为signed,则数值以补码形式存放,存储单元中的最高位(bit)用来表示数值的符号。如果指定为unsigned,则数值没有符号,全部二进制位都用来表示数值本身。
诬贬糜淖咨诈爆抨号市麻葵状鹅忆艺查米搂卧氛涵持年冗淮闽威害毯夸谈C++数据类型与表达式C++数据类型与表达式
4)浮点型数据分为float、double、long double三种,VC++6.0给float提供6位有效数字,double提供15位有效数字,long double提供19位有效位。
5) [ ]表示其中内容可以省略。
桥盎声匠涩荐姆尤棠反肋嘲拔寂疚锻隐裴哦掂姜锹秋茫都掐判痒简寒
文档评论(0)