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

admin2018-11-21  17

问题 有以下程序
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/hexp777K
0

最新回复(0)