C/C++——[02] 运算符和表达式

C/C++中表示数据运算的符号称为“运算符”。运算符所用到的操作数个数,称为运算符的“目数”。

C/C++语言的运算符有赋值运算符、算术运算符、逻辑运算符、位运算符等多类。

将变量、常量等用运算符连接在一起,就构成了“表达式”,表达式的计算结果称为“表达式的值”。

C/C++语言中常用的运算符介绍如下:

1. 算术运算符

运算符 说明
+
-
*
/
% 取模
++ 自增
-- 自减

2. 赋值运算符

  • 简单赋值:
    运算符 说明
    = 赋值
  • 复合算术赋值:
    运算符 示例 示例说明
    += a += b a = a+b
    -= a -= b a = a-b
    *= a *= b a = a*b
    /= a /= b a = a/b
    %= a %= b a = a%b
  • 复合位运算赋值:
    运算符 示例 示例说明
    &= a &= b a = a&b
    |= a |= b a = a|b
    ^= a ^= b a = a^b
    >>= a >>=b a = a>>b
    <<= a <<=b a = a<<b

3. 关系运算符

运算符 说明
> 大于
< 小于
>= 不小于
<= 不大于
== 等于
!= 不等于

关系运算符用于数值的大小比较,他们都是双目运算符。
关系运算符运算的结果是整型,值只有两种: 0 或非 0。 0 代表关系不成立,非 0 代表关系成立。

4. 逻辑运算符

运算符 说明 目数
&& 双目
|| 双目
单目

5. 位运算符

运算符 说明 目数
& 按位与 双目
| 按位或 双目
^ 按位异或 双目
~ 取反 单目
>> 右移 双目
<< 左移 双目

6. sizeof运算符

“sizeof”是 C/C++语言中的保留字,也是一个运算符。它的作用是求某一个变量占用内存的字节数,有两种用法:

  • sizeof(变量名)
  • sizeof(类型名)

7. 类型强制转换运算符

强制类型转换运算符的形式是:
(类型名)

它是单目运算符,功能是将其右边的操作数的值转换得到一个类型为“类型名”的值,它不改变操作数的值。

8. 运算符的优先级

一个表达式中可以有多个、多种运算符。不同的运算符优先级不同,优先级决定了表达式该先算哪部分、后算哪部分。

也可以用括号来规定表达式的计算顺序,一般推荐多用括号来表达复杂的表达式,避免出错和提高可读性。

C/C++语言中的运算符优先级列表如下:

补充:运算符 -> 拥有优先级为1。

原文地址:https://www.cnblogs.com/oddcat/p/9688751.html