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

C语言赋值(关系)运算符和逗号运算符

一.赋值(关系)运算符

1.关系运算符

高优先级组

<

左边值小于右边值,则返回1。否则返回0

<=

左边值小于等于右边值,则返回1。否则返回0

>

左边值大于右边值,则返回1。否则返回0

>=

左边值大于等于右边值,则返回1。否则返回0

低优先级组

==

左边值等于右边值,则返回1。否则返回0

!=

左边值不等于右边值,则返回1。否则返回0

关系运算符的优先级比算术运算符地,但比赋值运算符高。而高优先级组的优先级比低优先级又要高。结合律也是从左往右

Ex != wye == zee 等于(ex != wye) == zee

运算符(优先级从高至低)

结合律

()

从左往右

- + (一元运算符)++ --

从右往左

* / %

从左往右

+ -(二元运算符)

从左往右

< > <= >=

从左往右

==  !=

从左往右

= += -= /= %=

从右往左

2.赋值运算符

+=

把左值加上右值后的值在赋给左值

-=

把左值减去右值后的值在赋给左值

/=

把左值除以右值后的值在赋给左值

%=

把左值除以右值取余后的值在赋给左值

Scores += 20 等于 scores = scores + 20

Dimes-=2 等于 dimes = dimes - 2

Bunnies *=2 等于 bunnies = bunnies * 2

Time /=2 等于 time = time / 2

Reduce %=3 等于 reduce = reduce % 3

3.所有符号的优先级和结合律

运算符(优先级从高至低)

结合律

()

从左往右

- + (一元运算符)++ --

从右往左

* / %

从左往右

+ -(二元运算符)

从左往右

< > <= >=

从左往右

==  !=

从左往右

= += -= /= %=

从右往左

二.逗号运算符

在for循环当中我们就讲解过逗号运算符

For(I = 0,j=0;i>3;i++,j++)

在这个for循环中,初始化工作会将i和j的初始化都赋值为0。而在更新上面会让i,j变量都自增。

这里的,都是一个序列点。有逗号左侧项的所有副作用都在程序的右侧项之前发生.

而逗号运算符一共有两个性质

1.逗号副作用

逗号左侧项的所有副作用都在程序的右侧项之前发生

在printf()打印之前,i++副作用发生。

2.整个逗号表达式的值是右侧项的值

A = (1,2)

这个时候a等于逗号表达式右侧项值2.

b = 1,2;如果写成这样,编译器会将a =1作为逗号左侧的子表达式。2作为右侧的子表达式。变为

b = 1;

2;

这里2;自己为一条语句,虽然它啥也不干。


好了朋友们我们今天的内容到这就结束了,今天的内容到这里就结束了,如果有啥不会的朋友记得论坛里面提问哈~

如果朋友你感觉文章的内容对你有帮助,可以点赞关注文章和专栏以及关注我哈,嘿嘿嘿我会定期更新文章的,谢谢朋友你的支持哈

http://www.lryc.cn/news/9541.html

相关文章:

  • 几种在Linux/window下查询外网IP的办法。
  • 【nodejs-05】黑马nodejs学习笔记05-数据库基本操作01
  • 零基础、学历无优势、逻辑能力一般”,能转行做程序员吗?
  • 第五章.与学习相关技巧—Batch Normalization
  • Zynq非Video Mixer方案实现视频叠加输出,无需SDK配置,提供工程源码和技术支持
  • 从零实现Web服务器(二): 线程池以及线程池的作用,Get和Post的区别,项目中如何编写数据库连接池,定时器优化非活跃连接
  • 为什么伟大的产品只专注做一件事
  • pycharm远程连接服务器,并单步调试服务器上的代码
  • JVM05 方法区
  • 盘点3个.Net开发的WMS仓库管理系统
  • Linux下Java项目开机自动启动
  • 基于SpringBoot的智慧社区网站
  • 数据分析与SAS学习笔记3
  • 天干地支蓝桥杯国赛
  • Source lnsight工具的简单使用
  • 100个变态的软件测试面试题及答案!——看完变态面试官对你竖起大拇指!
  • Windows保护机制GS:原理及SEH异常处理突破
  • 大彩 串口屏
  • 安装 cplex 求解器
  • DPR-34 AC22V【双位置继电器】
  • Ubuntu16.04搭建Fabric1.4环境
  • 【JavaScript】深度剖析prototype与__proto__到底是什么以及他们的关系
  • css选择器
  • MyBatis详解2——增删改查操作
  • 最大连续子列和
  • 线性基 学习笔记
  • 算法-回溯算法-组合问题
  • ABAP中的Null值与space 以及 BW中ADSO的Key值
  • JavaScript库之Lodash常用方法
  • Kotlin新手教程二(Kotlin基本数据类型及基础语法)