C语言逻辑运算符的用法及解读
更新时间:2026年03月24日 14:13:04 作者:言念君君子
这篇文章主要介绍了C语言逻辑运算符的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
C语言逻辑运算符
在C语言中,逻辑运算符有&&、||、!
&&表示“与”的意思,需要两端的表达式的值都为true,该式的值才为true。||表示“或”的意思,两端的表达式的值只要有一端为true,该式的值就为true。!表示“非”的意思,将该式的真值换成相反的真值,即false和true互换。
但是在C99里有这样的一个名为“短路”的特性
- 使用&&时,如果左边false则右边不会执行
- 使用||时,如果左边true则右边不会执行
&&运算符,举例
#include<stdio.h>
int main()
{
int a=-1,b=0;
if(a++&&b++)
printf("%d %d",b,a);
if(++b&&++a)
printf("%d %d",a,b);
return 0;
}
想想程序的输出结果是什么
答案是:
1 2
程序的流程是
先定义变量a=-1,b=0,然后进入第一个if()判断,&&左边的值是-1,右边的值为0,所以此if()下的语句不执行,但是由于&&左侧为true,所以&&右侧的b++也会得到执行,此行结束时,a的值为0,b的值为1。
第二次if(),左边的值为2,右边的值为1,所以`if()``下的语句得到执行,输出a的值1,b的值2。
||运算符同理,如果左边的表达式的值为true,则右边的表达式不会执行。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
C语言报错Use of Uninitialized Variable的原因及解决方案
Use of Uninitialized Variable是C语言中常见且危险的错误之一,它通常在程序试图使用一个未初始化的变量时发生,本文将详细介绍Use of Uninitialized Variable的产生原因,提供多种解决方案,并通过实例代码演示如何有效避免和解决此类错误,需要的朋友可以参考下2024-06-06


最新评论