已知a=4,b=6,c=8,d=9,则“(a++,b>a++&&c>d)?++d:a<b”的值为0
为什么呢?求详细解答。谢谢。
括号里的,是什么意思呢
已知a=4,b=6,c=8,d=9,则“(a++,b>a++&&c>d)?++d:a<b”的值为0
为什么呢?求详细解答。谢谢。
括号里的,是什么意思呢
开始前:a=4,b=6,c=8,d=9
表达式:(a++,b>a++&&c>d)?++d:a<b
1、先计算a++ 得出a=5
2、在判断 b>a++ 先计算b>a 此时 a=5,b=6 所以条件不成立 返回假,同时a++ a=6
3、判断c>d, c=8,d=9, 所以条件不成立 返回假
4、在计算2和3返回结果的逻辑与运算 b>a++&&c>d 两边都为假,所以返回条件假
5、表达式A?B:C A为真执行B语句,为假执行C语句
6、结合4.5 所以表达式执行 a<b 而a=6 b=6;不成立,所以返回假 对应数字就是0
这样不知道您看懂了吗,希望对您有帮助,码子不容易,还望采纳