早教吧 育儿知识 作业答案 考试题库 百科 知识分享

当给16位的unsignedshort对象赋值100000时,赋的值是什么?100000-65535-1=34464

题目详情
当给 16 位的 unsigned short 对象赋值 100 000 时,赋的值是什么?
100000-65535-1=34464
▼优质解答
答案和解析
是100,000-65,536=34464或者说100,000-(65,535+1).
65535是unsigned short 最大能装载的数值,2进制为1111 1111 1111 1111(b)
而100,000的2进制为0001 1000 0110 1010 0000,将这个超过16位的值赋给16位的unsignedshort,只有后面16位被赋了进去,就是去掉了前面的0001,而0001 0000 0000 0000(b)=0000 1111 1111 1111 1111(b)+1(b)=65536=65535+1.去掉前面的0001,相当于100000的二进制数0001 1000 0110 1010 0000与0001 0000 0000 0000 0000相减,换算成10进制就是100,000-(65535+1)=100,000-65,535-1