运算符主要被认为是任何编程语言的基础。运算符是使我们能够对操作数执行特定逻辑和数学运算的符号。换句话说,运算符控制操作数。例如,运算符“+”用于加法,如下所示:
c = a + b;
这里,“a”和“b”是操作数,“+”是运算符,也称为加法运算符。加法运算符告诉编译器组合(即相加)操作数“a”和“b”。
在本教程中,我们将借助一些示例来了解 C++ 中不同类型的运算符。运算符是编程中对值或变量执行操作的符号。
运算符是对变量和值进行操作的符号。例如,+ 是加法运算符,而 - 是减法运算符。
C++ 运算符主要分为六种类型

为了对变量和数据执行算术运算,使用算术运算符。例如:
a + b
+ 运算符用于将两个变量 a 和 b 相加。在 C++ 中,还有许多其他算术运算符。
| 算术运算 | 运算符 | 用途 | 描述 |
|---|---|---|---|
| 加法 | + | (A+B) | 将操作数 A 和 B 相加 |
| 减法 | - | (A-B) | 从 A 中减去操作数 B |
| 乘法 | * | (A*B) | 将操作数 A 和 B 相乘 |
| 除法 | / | (A/B) | 将操作数 A 和 B 相除 |
| 取模 | % | (A%B) | 获取操作数 A 除以操作数 B 后的余数 |
#include <iostream>
using namespace std;
int main() {
int a, b;
a = 5;
b = 2;
// here printing of the sum of a and b takes place
cout << "a + b = " << (a + b) << endl;
// difference of a and b is printing
cout << "a - b = " << (a - b) << endl;
// the product of a and b is printing
cout << "a * b = " << (a * b) << endl;
// the division of a by b is printing
cout << "a / b = " << (a / b) << endl;
// the modulo of a by b is printing
cout << "a % b = " << (a % b) << endl;
return 0;
}
输出
a + b = 7 a - b = 3 a * b = 10 a / b = 2 a % b = 1
正如预期的那样,运算符 +、- 和 * 分别计算加法、减法和乘法。
在我们的程序中,请注意操作 (a / b)。除法运算符是 / 运算符。
如前面的示例所示,通过一个整数除以另一个整数,我们将得到商。但是,如果除数或被除数是浮点数,则结果将是小数。
注意:在 C++ 中,输出可能会根据不同数据类型(int/double)中操作数的组合而变化。如果操作数更改如下,将打印以下示例:
5/2 是 2
5.0 / 2 是 2.5
5 / 2.0 是 2.5
5.0 / 2.0 是 2.5
余数使用模运算符 % 计算。当 a = 9 除以 b = 4 时,余数为 1。
请记住,% 运算符只能与整数一起使用。
一元运算符是指对单个操作数进行操作的运算符。例如:递减 (--) 和 递增 (++) 运算符
即 C++ 中的递增和递减运算符分别是 ++ 和 --。
++ 将操作数的值增加 1,-- 将其减少 1。
例如
int num = 6;
// increment operator
++num; // 7
代码 ++num; 这里将 num 的值增加 1。
//An example of the working of increment and decrement operators
#include <iostream>
using namespace std;
int main() {
int a = 20, b = 200, result_a, result_b;
// here we are incrementing a by 1 and we will store the result in result_a
result_a = ++a;
cout << "result_a = " << result_a << endl;
//here we are decrementing b by 1 and we will store the result in result_b
result_b = --b;
cout << "result_b = " << result_b << endl;
return 0;
}
输出
result_a = 21 result_b = 199
在前面的程序中,++ 和 -- 运算符用作前缀(++a 和 --b)。但是,这些运算符也可以用作后缀(a++ 和 b--)。
C++ 中使用赋值运算符为变量赋值。
例如,
// assign 10 to b
b = 10;
在上面的示例中,变量 b 已被赋值为 10。
| 运算符 | 示例 | 等效于 |
|---|---|---|
| = | a = b; | 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; |
//An example for the assignment operators
#include <iostream>
using namespace std;
int main() {
int a, b;
// here the 6 is assigned to a
a = 6;
// here the 12 is assigned to b
b = 12;
cout << "a = " << a << endl;
cout << "b = " << b << endl;
cout << "\nAfter a += b;" << endl;
// here we are assigning the sum of a and b to a
a += b; // a = a +b
cout << "a = " << a << endl;
return 0;
}
输出
a = 6 b = 12 After a += b; a = 18
为了检查两个操作数之间的关系,使用关系运算符。例如:
// check whether a is greater than b
a > b;
在这种情况下,> 是关系运算符。它有助于检查 a 是否大于 b。
如果关系为真,它返回 1;如果为假,则返回 0。
| 运算符 | 含义 | 示例 |
|---|---|---|
| == | 等于 | 5 == 7 给出 false |
| != | 不等于 | 5 != 7 给出 true |
| > | 大于 | 5 > 7 给出 false |
| < | 小于 | 5 < 7 给出 true |
| >= | 大于或等于 | 5 >= 7 给出 false |
| <= | 小于或等于 | 5 <= 7 给出 true |
#include <iostream>
using namespace std;
int main() {
int a, b;
a = 5;
b = 7;
bool result;
result = (a == b); // false
cout << "5 == 7 is " << result << endl;
result = (a != b); // true
cout << "5 != 7 is " << result << endl;
result = a > b; // false
cout << "5 > 7 is " << result << endl;
result = a < b; // true
cout << "5 < 7 is " << result << endl;
result = a >= b; // false
cout << "5 >= 7 is " << result << endl;
result = a <= b; // true
cout << "5 <= 7 is " << result << endl;
return 0;
}
输出
5 == 7 is 0 5 != 7 is 1 5 > 7 is 0 5 < 7 is 1 5 >= 7 is 0 5 <= 7 is 1
逻辑运算符通常用于检查表达式是真还是假。如果表达式为真,它将返回 1;如果为假,则返回 0。
| 运算符 | 示例 | 含义 |
|---|---|---|
| && | 表达式 1 && 表达式 2 | 逻辑与。 当且仅当所有操作数都为真时,它才为真。 |
| || | 表达式 1 || 表达式 2 | 逻辑或。 当至少一个操作数为真时,它才为真。 |
| ! | !表达式 | 逻辑非。 当且仅当操作数为假时,它才为真。 |
逻辑运算符通常用于 C++ 中的决策。让我们看一些例子来充分理解逻辑运算符。

#include <iostream>
using namespace std;
int main()
{
bool result;
int a = 4, b = 6;
result = (a != b) && (a < b); // true
cout << "(a != b) && (a < b) is " << result << endl;
result = (a == b) && (a < b); // false
cout << "(a == b) && (a < b) is " << result << endl;
result = (a == b) && (a > b); // false
cout << "(a == b) && (a > b) is " << result << endl;
result = (a != b) || (a < b); // true
cout << "(a != b) || (a < b) is " << result << endl;
result = (a != b) || (a > b); // true
cout << "(a != b) || (a > b) is " << result << endl;
result = (a == b) || (a > b); // false
cout << "(a == b) || (a > b) is " << result << endl;
result = !(b == 3); // true
cout << "!(b == 3) is " << result << endl;
result = !(b == b); // false
cout << "!(b == b) is " << result << endl;
return 0;
}
输出
(a != b) && (a < b) is 1 (a == b) && (a < b) is 0 (a == b) && (a > b) is 0 (a != b) || (a < b) is 1 (a != b) || (a > b) is 1 (a == b) || (a > b) is 0 !(b == 3) is 1 !(b == b) is 0
逻辑运算符程序解释
C++ 中的位运算符对整数数据在单个位级别进行操作。这些操作包括位测试、位设置和位移位。C++ 中位运算符的详细解释在下一个教程中给出。
| operator | 它的描述 |
|---|---|
| & | 按位与 |
| | | 按位或 |
| ^ | 按位异或 |
| ~ | 位非 |
| << | 位左移 |
| >> | 位右移 |
以下是一些其他常见的 C++ 运算符列表。后续教程将详细介绍它们。
| 运算符 | 描述 | 示例 |
|---|---|---|
| sizeof | 它将返回数据类型的大小。 | sizeof(int); // 5 |
| ?: | 根据条件返回一个值 | string result = (7 > 0) ? "even" : "odd"; // "even" |
| & | 表示操作数的内存地址。 | # // num 的地址 |
| . | 访问结构变量或类对象的成员 | s1.marks = 94; |
| -> | 用于通过指针访问类或结构变量 | ptr->marks = 94; |
| << | 打印结果值 | cout << 6; |
| >> | 获取输入值 | cin >> num; |