计算 signed short 的取值范围

来源:互联网 发布:行知天下参考答案 编辑:程序博客网 时间:2024/06/05 12:00
#include <stdio.h>


#define BYTEDIGITS 8 //内存中每个字节占8位
void main()
{
//计算 signed short 类型取值范围

int bateValue=sizeof(signed short);   //获取 signed short 在计算机内存中所占用的字节
int sumBate=BYTEDIGITS*bateValue;
int total=2;  //取值范围 
//其中 signed short 是有符号 ,当表示正数的时候  最高位为符号位 是 0  ,最大的正整数  0111 1111 1111 1111, 当表示 为 负数的时候 ,最低位为符号位 是1,最小的正整数 1000 0000 0000 0000
for(int i=0;i<sumBate-2;i++)
{
total=total*2;
}
printf("short 占多少字节 :%d\t ,取值范围-%d~%d\n",bateValue,total,total-1);


}
0 0