====== 逻辑与/或操作符的注意事项 ====== 逻辑与操作符&&、逻辑或操作符||也称为条件与(conditional AND)、条件或(conditional OR),因为它们的第二个操作数不一定需要计算,这一点需要注意。 例如: if (i < 10 && a[i++] != 0) 如果之前i==5,则该语句执行后,i==6;如果i不小于10,则整个逻辑表达式的结果已知,第二个操作数不再计算,所以该语句执行后,i的值不变。 同样: if (i >= 10 || a[i++] == 0) 如果之前i==5,则该语句执行后,i==6;如果i不小于10,则整个逻辑表达式的结果已知,第二个操作数不再计算,所以该语句执行后,i的值不变。 类似的情况,还有三元条件表达式? :,其第二操作数和第三操作数只有一个会实际计算。 {{tag>C语言}}