学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

unsigned char问题..给我讲讲吧..

unsigned char问题..给我讲讲吧..

C语言。
有符号型singed和无符号型unsigned适用于char型,int型和long型三种类型,区别在于它们的最高位是否为符号。。
1。最高位是什么??是什么符号??不理解

#include <stdio.h>
main()
char a1;
unsigned char a2;
a1=129;
a2=129;
printf("a1=%d,a2=%u\n",a1,a2);
}
最后结果a1=-127,a2=129
这到底是怎么计算的??完全不懂。。a1为什么会等于-127??讲一下。。
最好给个例子分析下。。

TOP

char的范围是-128到127(-2^7到2^7-1),最高位用来表示符号位,一般是0表示正,1表示负。a1=129在内存中表示为:10000010(补码)转换成原码就为111111110即-127`````

TOP

发新话题