非洲新版食人族 电影:在C++中:unsigned 是何意义

来源:百度文库 编辑:高考问答 时间:2024/05/08 22:24:45

unsigned char,无符号字符类型,取值范围是(0-255)。看下一个例子:
int main()
{
unsigned char i=255;

printf("%d\n",i);
printf("%d\n",++i);

return 0;
}

i加1后,值不是256,而是0

char a
00000000
|_____这一位不存数据,表示符号
///////////////////////////////////////////////////////
unsigned a
00000000
|____这一位当作存数据的

就是没有符号的意思

说白了,就都是正数
由于在计算机中,整数是以补码形式存放的

所以根据最高位的不同
如果是1,有符号数的话就是负数拉
如果是无符号数,则都解释为正数,同时在相同位数的情况下,所能表达的整数范围变大

unsigned是数据是否是无符号数的定义标记,unsigned char,unsigned short, unsigned int,unsigned long是常用的带这个词的类型。
顺便一提:unsigned若省略后一个关键字,大多数编译器都会认为是unsigned int。