全球热推荐:【C语言】关于整型提升、截断、打印数据的结果

腾讯云 2023-04-16 12:31:32

一:先介绍一下相关概念

1.整型提升:


【资料图】

(1)应用场景数字有整数和小数,对应c语言中的整型和浮点型,由此可见当整数发生运算时,那其实就意味着整形运算,我们还知道如果小于整形的类型发生整型运算时,那就要进行整型提升

(2)应用场景整数的打印形式有多种,常见的%d和%u分别是以有符号的十进制形式和无符号的十进制形式来打印整数

(3)整型提升的规则无符号数在进行整型提升时高位补0,有符号数分为正数和负数,正数高位补0,负数高位补1,换句话说就是,有符号数高位补符号位即可

明白什么时候整型提升后,我们再来讲解发生截断

2.发生截断:

其实就是一个整形数据存储到小于整型的类型时,由于存放字节数有限,只能存放这个整型数据的一部分,这其实就是发生了截断

像上面的这种赋值方式就是要发生截断了

二:话不多说,直接上手操作一下就会了

200是一个整型数字,(32位下,方便表示)二进制表示形式为00000000000000000000000011001000截断后存到a中的是11001000、

100也是一个整型数字,(32位下,方便表示)二进制表示形式为00000000000000000000000001100100截断后存到a中的是01100100

a+b就是两个整数运算,那就是整形运算,要发生整型提升后,再进行相加,相加后的结果为00000000000000000000000100101100

存储到c时,由于c是char型,又要发生截断,截断后存储到c中的结果为00101100

最后打印a+b和c,由于%d是以有符号的十进制的形式打印整数,因为a+b本身就是32比特位了,所以不需要整型提升。但是c是8比特位,所以要进行整型提升,c的高位是0,那他就是有符号数里面的正数,按照相应的提升规则,高位全补符号位0

最后,提升完后,要进行打印,由于我们看到的是原码内容,储存在机器里的是补码内容,所以我们还要进行转码操作,又因为a+b和c都是正数,所以原码反码补码均相同,直接用计算器转换到十进制数字即可得出答案

三:最后的最后

小编只是个刚上大一的学生,写篇博客真的很不容易,呜呜呜

大家多多支持哈,小编在此感激不尽,嘻嘻嘻

x

热门推荐

全球热推荐:【C语言】关于整型提升、截断、打印数据的结果

2023-04

甘蔗放了几天有红点还能吃吗?

2023-04

【新时代新征程新伟业·笃行实干促发展】内蒙古深耕优势特色农牧业 热讯

2023-04

詹俊:切尔西技战术水准还不如波特时期 不如让布莱顿打皇马吧?_即时

2023-04

天天精选!三世佛指的是哪三位_三世佛指的是

2023-04

西施壶适合泡红茶吗 西施壶是否适合泡红茶

2023-04

盼到了!连放两晚共6场,来长沙看世界级焰火!

2023-04

场内定价权和场外定价权的冲突_当前最新

2023-04

通讯:“消博会为我们打开了一扇重要的大门”——古巴期待共享中国市场红利-前沿热点

2023-04

第三届中国国际消费品博览会闭幕 进场观众超过32万人次_今日最新

2023-04

推荐阅读

山西2021年度发放国家助学贷款逾29亿元 助40万名学生圆大学梦

2021-12

伪造事故赚取“差价” 机动车骗保成诈骗犯罪重灾区

2021-12

内蒙古满洲里新增确诊34例

2021-12

张家口崇礼全力做好冬奥测试赛服务保障工作

2021-12

咖啡、啤酒、盒饭……早出晚归的打工人 寒夜的便利店有故事

2021-12

云南涉疫医疗废物实现“日产日清”

2021-12

对话“贩毒”母亲:不认罪正申诉,盼抗癫痫药物氯巴占可合法购买

2021-12

甘肃省电力投资集团有限责任公司原党委委员、副总经理刘晓黎被开除党籍

2021-12

湖北省委政法委原副巡视员汪宗兴接受审查调查

2021-12

利用游戏平台设线上赌场 江苏一犯罪团伙涉非法牟利数百万元被连锅端

2021-12