数据类型的最高位用于标识数据的符号
-最高位为1,表明这个数为负数
-最高位为0,表明这个数为正数
*在计算机内部用补码表示有符号数
-正数的补码就是正数本身
-负数的补码为负数的绝对值各位取反后加1
*在计算机内部用源码表示无符号数
-无符号数默认为正数
-无符号数没有符号位
C语言中变量默认为有符号的类型
unsigned关键字声明变量为无符号类型,只有整数类型能声明unsigned变量
小结:
有符号数用补码表示
-正数的符号位为0
-负数的符号位为1
无符号数用原码表示
-无符号数没有符号位
-无符号数只用于表示正数
unsigned只能修饰整数类型的变量
当无符号数与有符号数混合计算时,会将有符号数转换为无符号数后再进行计算,结果为无符号数
标签:进阶,符号,--,补码,unsigned,负数,正数,位为 From: https://www.cnblogs.com/ysnana/p/17135344.html