有以下程序 main(){int i=0; i=~i; printf("%d\n",i); } 程序运行后的输出结果是

admin2020-05-19  20

问题 有以下程序
    main(){int i=0;
    i=~i;
    printf("%d\n",i);
    }
    程序运行后的输出结果是

选项 A、0
B、1
C、8
D、-1

答案D

解析 运算符(~)是位运算符中唯一的一个单目运算符,运算对象应置于运算符的右边,其运算功能是把运算对象的内容按位取反(使每一位上的0变1,1变0)。i的初值为0,二进制位00000000,因此取反后结果为11111111,最高位为符号位,为一1的补码形式,因此输出结果为一1。
转载请注明原文地址:https://kaotiyun.com/show/zvCp777K
0

最新回复(0)