猿问

-1无符号输出

#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
谢谢诸位


qq_遁去的一_1
浏览 1661回答 2
2回答

倚天杖

你需要printf("%hu\n",&nbsp;num);格式化输出中有个 length 位来指示类型的, 具体如下图:
随时随地看视频慕课网APP
我要回答