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

-1无符号输出

-1无符号输出

C
qq_遁去的一_1 2018-08-01 09:52:51
#include <stdio.h>int main(){    short num = -1;    // 1000 0000 0000 0001(原码)     // 1111 1111 1111 1110(反码)     // 1111 1111 1111 1111(补码)     // 按无符号输出, 结果为什么不是 65535     printf("%u\n", num); }问题:结果为什么不是 65535谢谢诸位
查看完整描述

2 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

你需要

printf("%hu\n", num);

格式化输出中有个 length 位来指示类型的, 具体如下图:

https://img1.sycdn.imooc.com//5b63b3ae0001556508000242.jpg


查看完整回答
反对 回复 2018-08-03
  • 2 回答
  • 0 关注
  • 1600 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号