unsigned无符号类型到底是什么?

来源:百度知道 编辑:UC知道 时间:2024/05/27 19:39:16
如题```
int是表示整形变量,如1,2,3
float是表示实数例如1.11,2.22,3.33
那么unsigned无符号是什么??
如有回答满意者有追分啊!!!

//unsigned修饰符,可以修饰int,char等型变量。指无符号。
//如果只有一个,那么它指的是unsigned int。32位机下,它的取值范围是0~4294967295(2的32次方-1)。
//例如:

unsigned int a;
a=1;//实际上,a=1;
a=-1;//实际上,a=-1的补码=2的32次方-1=4294967295。

//char型也一样。

unsigned char a;
a=97;//实际上,a=97;
a=-97;//实际上,a=-97的补码=2的8次方-97。

int类型变量可以取负值(即有符号位)
而unsigned int类型无符号位,所以可以表示的值是int类型的正最大值的两倍,

即在32位平台上:
int的取值范围:
-2147483648(-2的31次方)~2147483647(2^31-1)

unsigned int的取值范围是
0~4294967295(2^32-1)