C语言逻辑运算符||和&
||和&&是我们经常用到的逻辑运算符,与按位运算符|和&是两码事。下一节会介绍按位运算符。虽然简单,但毕竟容易犯错。看例子:
int i=0;
int j=0;
if((++i>0)||(++j>0))
{
//打印出i 和j 的值。
}
结果:i=1;j=0。
不要惊讶。逻辑运算符||两边的条件只要有一个为真,其结果就为真;只要有一个结果为假,其结果就为假。if((++i>0)||(++j>0))语句中,先计算(++i>0),发现其结果为真,后面的(++j>0)便不再计算。同样&&运算符也要注意这种情况。这是很容易出错的地方,希望读者注意。
int i=0;
int j=0;
if((++i>0)||(++j>0))
{
//打印出i 和j 的值。
}
结果:i=1;j=0。
不要惊讶。逻辑运算符||两边的条件只要有一个为真,其结果就为真;只要有一个结果为假,其结果就为假。if((++i>0)||(++j>0))语句中,先计算(++i>0),发现其结果为真,后面的(++j>0)便不再计算。同样&&运算符也要注意这种情况。这是很容易出错的地方,希望读者注意。