为什么"a &&(b = 5/a)"不将"5/a"分配给"b"?

i l*_*low 4 c debugging unsigned boolean variable-assignment

是否a && (b = 5/a)分配5/ab(非零a)?

我的朋友说它没有,但我很困惑为什么它不会.

Ale*_*ood 12

你的朋友错了.对于非零a,该语句a && (b = 5/a)将分配的值5/ab.

如果a == 0,则条件将短路并且不会发生分配.