当前位置: 首页 > news >正文

【和春笋一起学C++】逻辑操作符和条件操作符

目录

逻辑操作符

条件操作符(? :)


逻辑操作符

         逻辑操作符包含与(&&)、或(||)、非(!),这三者计算的优先级为:

         非(!)>与(&&)>或(||)

另外,和关系操作符,算法操作符相比,逻辑非得优先级要高于关系操作符和算术操作符,而逻辑与(&&)和逻辑或(||)的优先级要低于关系操作符。因此,对表达式求反时必须用括号将表达括起。

C++确保程序从左向右进行计算逻辑表达式,并在知道答案后立即停止。如以下表达式:

    if (x != 0 && (1 / x > 100)){x = 1;}

当x等于0时,1/x是非法的,但因为此时x!=0已经为false,程序不会继续向右计算表达式(1/x >100)的值,所以这段代码在运行时不会报错。

条件操作符(? :)

条件操作符可以用来替代简单的if else语句。

条件操作符是C++中唯一一个需要3个操作数的操作符。其完整表达式格式如下:

expression1 ? expression2 : expression3

如果expression1为true,则整个表达式的值为expression2的值,否则整个表达式的值为expression3的值。

条件操作符比较适合用于关系简单的情形,比如取x和y中较大的值:

    int x = 5;int y = 7;int z = x > y ? x : y;

当关系比较复杂时,为了便于理解和阅读代码,一般使用if else语句。 


http://www.mrgr.cn/news/93006.html

相关文章:

  • MySQL快速搭建主从复制
  • 【C++指南】一文总结C++类和对象【中】
  • Nginx1.19.2不适配OPENSSL3.0问题
  • NL2SQL-基于Dify+阿里通义千问大模型,实现自然语音自动生产SQL语句
  • 小白向:如何使用dify官方市场“ECharts图表生成”工具插件——dify入门案例
  • 【动手学强化学习】番外2-多智能体强化学习算法框架之“MARLlib”学习
  • PPT 小黑第38套
  • Spring(二)容器
  • Unity中动态切换光照贴图LightProbe的方法
  • 【Linux实践系列】:用c语言实现一个shell外壳程序
  • 【C语言】联合体 `union` 的妙用
  • Markdown HTML 图像语法
  • 从新加坡《Companion Guide on Securing AI Systems 》看可信AI全生命周期防护框架构建
  • WPF高级 | WPF 应用程序部署与发布:确保顺利交付到用户手中
  • I2C驱动(十二) -- 主控芯片的i2c_adapter驱动分析
  • 深度学习架构Seq2Seq-添加并理解注意力机制(一)
  • 【AI深度学习基础】Pandas完全指南入门篇:数据处理的瑞士军刀 (含完整代码)
  • MAC 本地搭建部署 dify(含 github访问超时+Docker镜像源拉取超时解决方案)
  • 洛谷 P11830 省选联考2025 幸运数字 题解
  • mapbox基础,使用点类型geojson加载symbol符号图层,用于标注文字