执行下面程序的结果是______。 main() { int x=2; printf("%d\n",(x--,x<<1,x&&5)); }

admin2010-05-22  50

问题 执行下面程序的结果是______。    main()    {  int x=2;       printf("%d\n",(x--,x<<1,x&&5));     }

选项 A、0
B、1
C、2
D、编译时有语法错误,不能执行

答案2

解析 逗号表达式x--,x<<1,x&&5先执行x--,x的值为1,再执行x<<1,表达式的值为2,但x的值仍是1(不是移位赋值表达式),最后执行x&&5,二者均不为0,逻辑与的结果是1。
转载请注明原文地址:https://jikaoti.com/ti/FAI0FFFM
0

最新回复(0)