为了账号安全,请及时绑定邮箱和手机立即绑定

请问如果Short 类型占16位,赋给short的最大数是什么?

请问如果Short 类型占16位,赋给short的最大数是什么?

C++
幕布斯7119047 2022-05-13 18:11:16
是2的17次方没吗再问当给16位的unsigned short 对象赋值100000时,赋的值是什么谢谢请详解
查看完整描述

2 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

short 最大值是0111 1111 1111 1111,即2的15次方减1(最高位是符号位)
unsigned short 最大值是1111 1111 1111 1111,即2的16次方减1
当给16位的unsigned short 对象赋值100000时,赋的值是什么,那就是它自己了

查看完整回答
反对 回复 2022-05-15
?
胡说叔叔

TA贡献1804条经验 获得超8个赞

short int 字长16位,最高位是符号位,只能用15个1,写成16进制数是 0x7fff。
unsigned short 字长16位,没符号位,可以用16个1,写成16进制数是 0xffff。
他们的10进制值可以打印出来看:
void main()
{
short int x=0x7fff;
unsigned short int y =0xffff,z;
printf("x=%d ",x);
printf("y=%d ",y);
z = 100000;
printf("z=%d ",z);
}
x=32767 y=65535 z=34464 (z高位溢出丢失)


查看完整回答
反对 回复 2022-05-15
  • 2 回答
  • 0 关注
  • 642 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信