gpt4 book ai didi

c - 短路算子评估顺序

转载 作者:行者123 更新时间:2023-11-30 18:24:55 25 4
gpt4 key购买 nike

main()
{
int a,b=0,c=1,d=1;
a=++b&&++c||++d;
printf("%d %d %d",b,c,d); //1 2 1
b=0,c=1,d=1;
a=b&&++c||++d;
printf("%d %d %d",b,c,d); //0 1 2
}

为什么第二个 printf 给出答案 0 1 2 而不是 0 2 1 ?

最佳答案

Why second printf gives answer 0 1 2 instead of 0 2 1 ?

&&short-circuiting.

a=b&&++c||++d;
如果 b0(此处就是这种情况),则

++c 将不会被计算。因此,c1 而不是 2

关于c - 短路算子评估顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34654736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com