您的位置:

C++二元运算符:加减乘除、取模、位运算、比较、逻辑运算等

一、算术运算符

C++中的算术运算符包括加(+)、减(-)、乘(*)、除(/)和取模(%)。它们用于执行基本的数学运算。例如:

int a = 10;
int b = 3;
int c = a + b;  // c = 13
int d = a - b;  // d = 7
int e = a * b;  // e = 30
int f = a / b;  // f = 3
int g = a % b;  // g = 1

在上面的代码中,我们定义了几个 int 类型的变量,并使用了各种算术运算符来执行基本的数学运算。值得注意的是,在 C++ 中,整数相除会向下取整,因此如果我们将一个整数除以另一个整数,结果将会是一个整数。

二、位运算符

位运算符用于对二进制数进行操作。

1、按位与(&)

按位与操作(&)对两个数(或在二进制表示中的位)执行一次 AND 操作。例如:

int a = 3; // 二进制表示为 0011
int b = 5; // 二进制表示为 0101
int c = a & b; // 二进制表示为 0001,即十进制的 1

2、按位或(|)

按位或操作(|)对两个数(或在二进制表示中的位)执行一次 OR 操作。例如:

int a = 3; // 二进制表示为 0011
int b = 5; // 二进制表示为 0101
int c = a | b; // 二进制表示为 0111,即十进制的 7

3、按位异或(^)

按位异或操作(^)对两个数(或在二进制表示中的位)执行一次 XOR 操作。例如:

int a = 3; // 二进制表示为 0011
int b = 5; // 二进制表示为 0101
int c = a ^ b; // 二进制表示为 0110,即十进制的 6

4、按位取反(~)

按位取反操作(~)对一个数(或在二进制表示中的位)执行一次 NOT 操作。例如:

int a = 3; // 二进制表示为 0011
int b = ~a; // 二进制表示为 1100,即十进制的 -4

值得注意的是,按位取反操作(~)会将原数的二进制表示中的每一位进行取反操作,因此结果可能是负数。

三、比较运算符

C++中的比较运算符用于比较两个值的大小。这些运算符可以返回 true 或 false,具体取决于操作数的关系。

1、等于(==)

等于操作(==)用于比较两个值是否相等。例如:

int a = 3;
int b = 5;
bool c = (a == b); // false
bool d = (a == 3); // true

2、不等于(!=)

不等于操作(!=)用于比较两个值是否不相等。例如:

int a = 3;
int b = 5;
bool c = (a != b); // true
bool d = (a != 3); // false

3、大于(>)

大于操作(>)用于比较两个值的大小,如果左操作数大于右操作数,返回 true。例如:

int a = 3;
int b = 5;
bool c = (a > b); // false
bool d = (b > a); // true

4、小于(<)

小于操作(<)用于比较两个值的大小,如果左操作数小于右操作数,返回 true。例如:

int a = 3;
int b = 5;
bool c = (a < b); // true
bool d = (b < a); // false

5、大于等于(>=)

大于等于操作(>=)用于比较两个值的大小,如果左操作数大于或等于右操作数,返回 true。例如:

int a = 3;
int b = 5;
bool c = (a >= b); // false
bool d = (b >= a); // true
bool e = (a >= 3); // true

6、小于等于(<=)

小于等于操作(<=)用于比较两个值的大小,如果左操作数小于或等于右操作数,返回 true。例如:

int a = 3;
int b = 5;
bool c = (a <= b); // true
bool d = (b <= a); // false
bool e = (a <= 3); // true

四、逻辑运算符

C++中的逻辑运算符用于组合并比较多个条件。这些运算符可以返回 true 或 false,具体取决于操作数的关系。

1、逻辑与(&&)

逻辑与操作(&&)对两个条件执行一次 AND 操作,如果两个条件都为 true,则返回 true,否则返回 false。例如:

bool a = true;
bool b = true;
bool c = false;
bool d = (a && b); // true
bool e = (a && c); // false

2、逻辑或(||)

逻辑或操作(||)对两个条件执行一次 OR 操作,如果两个条件中的至少一个为 true,则返回 true,否则返回 false。例如:

bool a = true;
bool b = false;
bool c = false;
bool d = (a || b); // true
bool e = (b || c); // false

3、逻辑非(!)

逻辑非操作(!)对一个条件执行一次 NOT 操作,如果条件为 false,则返回 true,否则返回 false。例如:

bool a = true;
bool b = false;
bool c = !a; // false
bool d = !b; // true

总结

本文介绍了 C++ 中的各种二元运算符,包括算术运算符、位运算符、比较运算符和逻辑运算符,并给出了具体的示例代码,希望对大家有所帮助。