亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

C++运算符大全:算术/关系/逻辑/位/赋值/杂项与优先级结合性

运算符是指示编译器执行特定数学/逻辑操作的符号。C++内置运算符丰富,分六大类:

算术运算符

假设A=10、B=20:

运算符说明示例
+加法A+B=30
-减法(左减右)A-B=-10
*乘法A*B=200
/除法(分子/分母)B/A=2
%取模(整除余数)B%A=0
++自增(+1)A++=11
--自减(-1)A--=9

关系运算符

假设A=10、B=20:

运算符说明示例
==相等判断(A==B)为假
!=不等判断(A!=B)为真
>大于判断(A>B)为假
<小于判断(A<B)为真
>=大于等于(A>=B)为假
<=小于等于(A<=B)为真

逻辑运算符

假设A=1(真)、B=0(假):

运算符说明示例
&&逻辑与:两操作数均非零则真(A&&B)为假
||逻辑或:任一操作数非零则真(A||B)为真
!逻辑非:反转操作数逻辑值!(A&&B)为真

位运算符

逐位操作。真值表(p、q为位):

pqp&qp|qp^q
00000
01011
11110
10011

设A=60(0011 1100)、B=13(0000 1101):

A&B = 0000 1100 (12)
A|B = 0011 1101 (61)
A^B = 0011 0001 (49)
~A  = 1100 0011 (-61,补码有符号数)

C++位运算符表(A=60、B=13):

运算符说明示例
&按位与:两位均1结果1(A&B)=12
|按位或:任一位1结果1(A|B)=61
^按位异或:仅一位1结果1(A^B)=49
~按位取反:翻转所有位(~A)=-61
<<左移:左操作数按右操作数位数左移A<<2=240
>>右移:左操作数按右操作数位数右移A>>2=15

赋值运算符

运算符说明示例
=简单赋值C=A+B
+=加后赋值C+=A 等价 C=C+A
-=减后赋值C-=A 等价 C=C-A
*=乘后赋值C*=A 等价 C=C*A
/=除后赋值C/=A 等价 C=C/A
%=取模后赋值C%=A 等价 C=C%A
<<=左移后赋值C<<=2 等价 C=C<<2
>>=右移后赋值C>>=2 等价 C=C>>2
&=按位与后赋值C&=2 等价 C=C&2
^=按位异或后赋值C^=2 等价 C=C^2
|=按位或后赋值C|=2 等价 C=C|2

杂项运算符

序号运算符与说明
1

sizeof

返回变量/类型字节大小。sizeof(int)通常为4。

2

条件运算符 ? :

Condition ? X : Y:真取X,假取Y。

3

逗号运算符 ,

顺序求值,整体值为最后表达式值。

4

成员访问 . 和 ->

访问类/结构体/联合成员。

5

强制转换 Cast

如int(2.2000)得2。

6

取地址 &

返回变量地址。

7

间接访问 *

指针解引用。

运算符优先级与结合性

优先级高者先结合。如x = 7 + 3 * 2中*优先于+,结果13而非20。表中上方优先级高,同组按结合性结合。

类别运算符结合性
后缀() [] -> . ++ --左→右
一元+ - ! ~ ++ -- (type)* & sizeof右→左
乘除模* / %左→右
加减+ -左→右
移位<< >>左→右
关系< <= > >=左→右
相等== !=左→右
按位与&左→右
按位异或^左→右
按位或|左→右
逻辑与&&左→右
逻辑或||左→右
条件?:右→左
赋值= += -= *= /= %= >>= <<= &= ^= |=右→左
逗号,左→右

C语言

  1. C#运算符——C#运算符全面指南
  2. 深入理解 C++ 数据类型:基础类型、修饰符与最佳实践
  3. 掌握 C++ 运算符:六大类型全解析与实战示例
  4. C++ 注释最佳实践:编写可读、可维护代码的注释艺术
  5. C++ 类模板实战指南:编写灵活的类型无关代码
  6. C 语言运算符完全指南:算术、关系、逻辑、位运算等
  7. C++ 运算符全解析:类型、示例与示例程序
  8. C 语言运算符大全:算术、关系、逻辑、位运算、赋值与优先级详解
  9. C++编程语言:核心特性全景解析
  10. C++常量与字面量完全手册:类型、语法与最佳实践
  11. 精通Python运算符:全面指南
  12. 精通 Java 运算符:类型、语法与实战示例