运算符的优先级及其结合性
首先运算符可以大致分为三类: 算术运算符、关系运算符、赋值运算符。
1. 我们先来看一下算术运算符都有哪些?
算术运算符有: “+ - ++ -- * / % ”。而这些算数的优先级又是怎么样的?
我们先来理解一下什么是单目操作符,什么是双目操作符。单目操作符就是只需要一个数便可与其进行操作运算。例如 “-5”这个“-”只需要一个数(5)便可操作。同理双目操作符也就是需要两个数才可以进行操作运算。如加号“+”,a + b,这个加号需要俩个数才能执行。三目操作符则需要三个操作数才能进行运算操作的运算符。
接下来分出单目运算符和双目运算符。单目操作符:+ - ++ -- (注意此单目操作符中的 + 和 - 表示的是正负号)
双目操作符:* / % +(加号) -(减号)。
大家要明白C语言中的单目操作符的优先级是最高,它优先于双目、三目操作符。
所以 优先级:“ + - ++ -- ” 大于 “ * / % +(加号) -(减号)”
如下图列出优先级的高低,同一行优先级相等。
单目操作符的结合性是从右到左的,看例子: -i++,试着判断 i是先和 ++ 结合还是 - 呢?
因为单目操作符的结合性是从右到左的,可以理解为表达式是从右边开始执行。所以 i先和++结合,即 -(i++)。而双目操作符的结合性是从左到到右,想想我们的小学数学加法减法,是不是从左到右运算的呢?当然是啦!
2. 关系运算符:
关系运算有: < <= > >= == != (注意想"<="这样的运算符中间是不可以用空格隔开的!)
下面来分这些运算符一下优先级:如图:这些关系运算符没有必要去刻意去记,你记住反正就是做为判断的操作符就得了。
3.赋值运算符:
先来说一下这些运算操作符是什么,如 “ += ” 看式子: a += x + y; 这个式子就相当于
a = a + ( x + y ) ; 同样的 a -= x + y ,就相当于 a = a - (x + y);其他赋值运算符也同理;
下面来比较一下运算符的优先级: 算术运算符 > 关系运算符 > 赋值运算符。
运算符的优先级及其结合性相关推荐
- 说说C语言运算符的“优先级”与“结合性”
本文链接:https://blog.csdn.net/steedhorse/article/details/5903974 论坛和博客上常常看到关于C语言中运算符的迷惑,甚至是错误的解读.这样的迷惑或 ...
- swift:高级运算符(位运算符、溢出运算符、优先级和结合性、运算符重载函数)...
swift:高级运算符 http://www.cocoachina.com/ios/20140612/8794.html 除了基本操作符中所讲的运算符,Swift还有许多复杂的高级运算符,包括了C语和 ...
- [c语言]运算符的优先级与结合性
c语言中运算符的优先级和结合性常常被人混淆一谈,本文目的在于简单谈谈两者的区别.本文举几个简单的例子说明,这些运算符也特别常用. 首先要明白的是:优先级决定表达式中各种不同的运算符起作用的优先次序:而 ...
- C语言的运算符的优先级与结合性+ASCII表
[0]README 0.1) 内容来源于 C程序设计语言, 旨在整理出C语言的运算符的优先级与结合性, 如下图所示(哥子 记了大半年都没有记住,也是醉了,每次都要去翻): 0.2) 再补充下 Java ...
- 三目运算符_C语言知识点:运算符的优先级和结合性
运算符是一种告诉编译器执行特定的数学或逻辑操作的符号. C语言内置了丰富的运算符,大体可分为10类:算术运算符.关系运算符.逻辑运算符.位操作运算符.赋值运算符.条件运算符.逗号运算符.指针运算符.求 ...
- c语言左值中有运算符,C语言左值,运算符的优先级以及结合性探讨
刚刚开始看一本书.<C陷阱与缺陷>,相信学习C语言的大家都对这本书有耳闻.今天看到了里面的贪心法则.也即在读到一个字符后,尽可能多的读入更多的字符,直到读入的字符组成的字符串已经不可能再组 ...
- C语言 运算符的优先级和结合性是怎样的?
1.问题阐述 各种运算符的优先级是怎样的?结合顺序又是怎样的? 2.专家解答 C语言中的运算符种类丰富,有40多种,分为15种优先级,而且还具有结合性的特点.在表达式中,各运算对象参与运算的先后顺序不 ...
- c语言 异或_C语言知识点:运算符的优先级和结合性
运算符是一种告诉编译器执行特定的数学或逻辑操作的符号. C语言内置了丰富的运算符,大体可分为10类:算术运算符.关系运算符.逻辑运算符.位操作运算符.赋值运算符.条件运算符.逗号运算符.指针运算符.求 ...
- 巧解C语言运算符的优先级和结合性
本篇文章我们从一个例子入手讲解,请看下面的代码: #include int main(){ int a = 16, b = 4, c = 2; int d = a b * c; int e = a / ...
- C语言运算符的优先级及结合性
C语言运算符的优先级我们结合实例了解会更加简单易懂. 示例程序 #include <stdio.h> int main(){int a = 16, b = 4, c = 2;int d = ...
最新文章
- 行业洞见 | 一文了解自动驾驶汽车
- Android初学:联系创建Activity
- asp.net 调用苹果摄像头扫描条码_苹果刚刚发布了近两年最值得买的 iPhone
- 使用ViewPager实现左右循环滑动图片
- .Net之微信小程序获取用户UnionID
- 《C++ Primer 第五版》(第3.5-3.6节) ——C++中的内置数组类型,string对象和C风格字符串
- 第十节:基于MVC5+Unity+EF+Log4Net的基础结构搭建
- js 获得明天0点时间戳_js实现一个简单钟表动画(javascript+html5 canvas)
- 联想计算机不能进入系统桌面,联想电脑装系统,进不了PE桌面,怎么处理?
- 从Excel读取数据,然后分析相似的数据,多线程处理(多线程比较相似的字符串,统计出相似的数量及字符串)...
- EmEditor小功能与使用技巧
- 数据结构实验报告——线性表
- C++ primer 5th 习题之10.13
- 增值税报税显示服务器返回,增值税发票综合服务平台常见问题
- 摄影测量简答题和作图题
- HCL_路由器_三层交换
- 巴比特 | 元宇宙每日必读:央视网在Polygon发布数字藏品,支持无封闭期的转赠,这是什么新玩法?...
- word如何一次性删除所有批注
- 公司电子企业邮箱注册哪个好,电子企业邮箱怎么写?
- 【按键精灵学习记录】以DOTA2人机为例