运算符是告诉编译器执行特定数学或逻辑函数的符号。 C++语言内置运算符丰富,提供以下类型的运算符 :
- 算术运算符
- 关系运算符
- 逻辑运算符
- 按位运算符
- 赋值运算符
- 其它运算符
算术运算符 (Arithmetic Operators)
下表显示了C++语言支持的所有算术运算符。 假设变量A=10,变量B=20:
操作者 | 描述 | 例 |
---|---|---|
+ | 添加两个操作数。 | A + B = 30 |
− | 从第一个减去第二个操作数。 | A - B = -10 |
* | 将两个操作数相乘。 | A * B = 200 |
/ | Divides numerator by de-numerator. | B/A = 2 |
% | 模数运算符和整数除法后的余数。 | B%A = 0 |
++ | 递增运算符将整数值增加1。 | A ++ = 11 |
-- | 递减运算符将整数值减1。 | A-- = 9 |
关系运算符 (Relational Operators)
下表显示了C++支持的所有关系运算符。假设变量A=10,变量B=20:
操作者 | 描述 | 例 |
---|---|---|
== | 检查两个操作数的值是否相等。 如果是,则条件成立。 | (A == B)不是真的。 |
!= | 检查两个操作数的值是否相等。 如果值不相等,则条件成立。 | (A!= B)是真的。 |
> | 检查左操作数的值是否大于右操作数的值。 如果是,则条件成立。 | (A> B)不是真的。 |
< | 检查左操作数的值是否小于右操作数的值。 如果是,则条件成立。 | (A < B) 为真 |
>= | 检查左操作数的值是否大于或等于右操作数的值。 如果是,则条件成立。 | (A> = B)不是真的。 |
<= | 检查左操作数的值是否小于或等于右操作数的值。 如果是,则条件成立。 | (A <= B)是真的。 |
逻辑运算符 (Logical Operators)
下表显示了C++语言支持的所有逻辑运算符。 假设变量A=1,变量B=0:
操作者 | 描述 | 例 |
---|---|---|
&& | 称为逻辑AND运算符。 如果两个操作数都不为零,则条件成立。 | (A && B)是假的。 |
|| | 称为逻辑OR运算符。 如果两个操作数中的任何一个非零,则条件变为真。 | (A || B)是真的。 |
! | 称为逻辑非运算符。 它用于反转其操作数的逻辑状态。 如果条件为真,则Logical NOT运算符将使其为false。 | !(A && B)是真的。 |
按位运算符 (Bitwise Operators)
按位运算符处理位并执行逐位运算。 &,|和^的真值表如下 -
p | q | p&q | p | q | p ^ q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
赋值运算符
下表列出了 C++ 支持的赋值运算符:
操作者 | 描述 | 例 |
---|---|---|
= | 简单的赋值运算符,把右边操作数的值赋给左边操作数 | C = A + B 将把 A + B 的值赋给 C |
+= | 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 | 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 |
标签:学习,操作数,左边,C++,运算符,按位,赋值 From: https://blog.csdn.net/xuann/article/details/141404934