C语言整数溢出实例
发布时间
阅读量:
阅读量
#include <stdio.h>
int main(int argc, char **argv)
{
unsigned short int a;
signed short int b;
a = 50000;
b = 50000;
printf("\n a = %d \t b = %d \n", a, b);
return 0;
}
运行结果如下:
a = 50000 b = -15536
就本例而言进行分析: 'short int' 类型,在计算机系统中通常采用两个字节(Byte)来存储数值;每个字节由八个比特(bit)构成(即1 Byte等于8 bit)。每一位均代表一个二进制数字0或1。因此, 'short int' 类型能够表示 的整数值, 其中以整数值零为中心对称分布于-32768至+32767之间, 因此其取值范围为-32768至+32767。相比之下,在声明了‘unsigned’的情况下,'unsigned short int' 类型的取值范围则扩展至从0至+65535之间。
由以上分析可知,在使用无符号16位整型数据类型时(即'data type unsigned short in
全部评论 (0)
还没有任何评论哟~
