c语言中(i=1,i=10)?i++||++i:++i的结果是多少?

2025-03-24 03:18:59
推荐回答(2个)
回答1:

结果为1
首先要知道?:三目运算符,如果(i=1, i=10)为真则执行i++||++i,否则执行++i
因为(i=1, i=10)是个逗号表达式,从左往右依次执行,返回最后一个表达式的结果,所以返回10, i=10,整个表达式为真,所以执行i++||++i,这是一个逻辑表达式
因为i=10,所以整个表达式为真,返回1,所以整个表达式的结果为1

另外,这里由于i=10为真,所以||后面的式子就不会执行了,最后得到i的结果为11

回答2:

1