c++ 的 类型转换

类型转换


转换类型的方式有两种:自动转换和强制类型转换

自动转换:由编译器自动完成,遵循一定的规则

强制类型转换:有编码者自己制定,把表达式的运算结果转换成所需要的数据类型

但不管时自动类型转换或时强制类型转换,他们都是临时的即仅当前语句有效

自动类型转换原则

  • 占用内存字节少的(值域小)的类型,向占用内存字节数多的类型转换,以保证精度不降低

  • 无符号和有符号参加运算,需要将有符号转换成无符号

  • int和double 参加运算,int将转换成double 类型

  • char和short类型参加运算,都会将自己转换成int类型

强制转换类型

(类型说明符)(表达式)

作用:

将表达式的运算结果强制转换成类型说明符所表示的类型

原码、反码、补码

计算机储存的数据都是补码

原码:计算机中对数字的二进制定点表示方法

123:原码 0111 1011

无符号数:

补码反码原码

有符号数

正数:

补码反码原码

负数

反码==原码符号位不变其他位按位取反

补码 == 反码+1

负数在计算机以补码的方式储存

非负数在计算机以原码的方式储存

补码的意义

1、统一了0的编码
+0补码:0000 0000
-0补码:0000 0000
2、将减法运算变成加法运算

假如没有补码:

10: 0000 1010
-6: 1000 0110
---------------
	 1001 0000  ----》-16   

使用补码

10: 0000 1010
-6: 1111 1010
---------------
	 0000 0100  ----》4

对数据的存

负数在计算机上以补码的形式储存

非负数在计算机上以原码的方式储存

八进制数 以原码的形式储存

十六进制 以原码储存

对数据的取

如果是对 无符号变量 进行取值 ,输出内存的原样数据

如果是 有符号变量 进行取值 ,且是一个负数时,则会将内存数据求出补码,输出补码

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...