C运算符的优先级和结合性详细解决

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。
c语言内置了丰富的运算符,大体可分为10类:算术运算符、关系运算符、逻辑运算符、位操作运算符、赋值运算符、条件运算符、逗号运算符、指针运算符、求字节数运算符和特殊运算符。
根据运算符可操作的操作数的个数,可把运算符分为一元运算符、二元运算符和多元运算符(一般三元)。
1、算数运算符
用于数值计算,包括:加(+)、减(-)、乘(*)、除(/)、求余(%)、自增(++)、自减(--)。
2、关系运算符
用于比较运算,包括:大于(>)、小于(=)、小于等于(<=)、不等于(!=)。
3、逻辑运算符
用于逻辑运算,包括:与(&&)、或(||)、非(!)。
4、位操作运算符
按二进制位进行运算,包括:位与(&)、位或(|)、位非(~)、 位异或(^)、左移()。
5、赋值运算符
用于赋值运算,包括:简单赋值(=)、复合算术赋值(+=、-=、*= 、/=、%=)以及复合位运算赋值(&=、|=、^=、>>=、< y) ? x : y。c语言中有且只有这一个三目运算符。
7、逗号运算符
用于把若干表达式组合成一个表达式:表达式1 , 表达式2。
8、指针运算符
用于取内容(*)和取地址(&)两种运算。
9、求字节数运算符
用于计算数据类型所占的字节数(sizeof)。
10、特殊运算符
包括括号()、数组下标[]、成员(-> 和 .)等。
比如式子“x = 1 + 2 * 3 / 4”,需要先计算乘再计算除,然后是加,最后是赋值。这里介绍下关于运算符在参与运算过程中的两个概念:
优先级:当不同运算符优先级不同时,先计算谁后计算谁
结合性:当不同运算符优先级相同时,先计算谁后计算谁
运算符的优先级和结合性
作为初学者,当一个表达式中有多个运算符时,如果不知道哪个优先级高哪个优先级低就可以查一下优先级表,等用的时间长了自然而然就记住了。而且,事实上在编程的时候也不需要考虑优先级的问题。因为如果不知道优先级高低的话,加一个括号就可以了,因为括号( )的优先级是最高的。
另外,大多数运算符的结合性都是从左往右。从右向左的一个是单目运算符,另一个是三目运算符,还有一个就是双目运算符中的赋值运算符=。运算符的“结合性”也不用死记,在不断使用中就记住了。

微软新产品Surface Pro或将采用创新触控板
LED温度指示器电路图分析
AC/DC 转换电路设计的课题和探讨事项-认证、规范等
行业方案|通信设备行业SRM供应商协同管理系统解决方案
深度学习在人工智能领域的前世今生
C运算符的优先级和结合性详细解决
华为和高通的GPU到底还有多大的差距
Siri音箱已经开始生产?将在WWDC 2017上发布
安科瑞安全智能的配电房运维系统方案
5分钟开发智能单车,机智云4.0加速物联网设备开发
掌握技巧缩短PCB设计时间
Wowza:视频技术的未来—大趋势
圣邦微电子推出一款高精度、低噪声、大电流输出运放SGM8557H-1AQ
高效率大功率T型三电平IGBT方案
Wi-Fi 6传输范围广速度快,将成为新一代无线认证标准
固态电解质中锂驱动应力变化监测
欧盟出台政策围堵中国 半导体发展孤立无援
我国锂电行业机器视觉赛道的四种趋势
5G+VR技术推进智慧医疗加速落地
NVIDIA Jetson Nano 2GB:视觉类脚本的环境配置与映射