单选题 若有定义:int a=0,b=0,c=0,d=0;,以下关于C语言表达式:(++ a || ++ b)?++c:++d执行顺序的叙述正确的是( )。
【正确答案】 B
【答案解析】[解析]表达式1?表达式2:表达式3,若表达式1为真,则执行表达式2,否则执行表达式3,++a表示先将变量a+1,再执行其他操作,逻辑或运算符遵循“短路求值”策略,即只有在仅靠左操作数的值无法确定该逻辑表达式的结果时,才会求解右操作数,表达式(++a || ++b)中,左操作数 ++a的值为1,已经可以确定整个逻辑表达式的结果为1,因此右操作数++b不再求解,直接执行表达式2,即++c,答案为B选项。