C++中隐式类型转换的问题
如inta=100,unsignedintb=99,则b-a得4294967295,但是如果inta=100,unsignedshortb=99,则b-a得-1??不是应...
如 int a= 100, unsigned int b=99,则b-a得4294967295,
但是如果 int a=100,unsigned short b=99,则b-a得-1??不是应该由有符号想无符号的方向进行隐式转换么? 展开
但是如果 int a=100,unsigned short b=99,则b-a得-1??不是应该由有符号想无符号的方向进行隐式转换么? 展开
2个回答
展开全部
int表示范围为[-65535,65535]。而short型表示的范围是[-32768,32767]。所以unsigned short 的值在int范围内,所以被转换为int型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询