gaoyi1201: 1. 编译器行为 • 这段代码在大多数C编译器下不会报错。 • 因为if (a = 0)在语法上是合法的C语句。这里a = 0是一个赋值表达式,它将0赋值给a,并且整个表达式的值为0。 • 由于0在C的条件判断中被视为false,所以if语句中的代码块printf(" a == 0 ");不会被执行。 2. 逻辑错误 • 然而,从逻辑上讲,这是一个错误。程序员很可能是想判断a是否等于0,这种情况下应该使用if (a == 0)。 • 如果代码写成if (a = 1)(假设误写成这样),a会被赋值为1,并且if条件会被判断为true(因为a = 1这个赋值表达式的值为1),这可能会导致程序产生意想不到的结果。 (你还是这么喜欢36)
九九乘法表(c基础)
简单介绍一下 if else else if 函数(c基础)