C 运算符学习笔记

赋值运算符

赋值运算符用于将一个值赋给一个变量。C 语言中的赋值运算符是 =。例如:

cCopy Code
int a = 10;

这一行代码中,将整数值 10 赋给变量 a

算术运算符

算术运算符用于执行基本的数学运算,如加、减、乘和除。C 语言中常见的算术运算符如下:

运算符 描述 示例
+ 5 + 3 = 8
- 5 - 3 = 2
* 5 * 3 = 15
/ 5 / 3 = 1(因为是整数除法)
% 取余 5 % 3 = 2
++ 自增 a = 5; a++; (a 的值现在为 6)
-- 自减 a = 5; a--; (a 的值现在为 4)

关系运算符

关系运算符用于比较两个值之间的关系,例如大小关系。C 语言中的关系运算符如下:

运算符 描述 示例
== 等于 5 == 3 (返回 0)
!= 不等于 5 != 3 (返回 1)
> 大于 5 > 3 (返回 1)
< 小于 5 < 3 (返回 0)
>= 大于等于 5 >= 3 (返回 1)
<= 小于等于 5 <= 3 (返回 0)

逻辑运算符

逻辑运算符用于合并多个条件,以便检查它们之间的关系。C 语言中常见的逻辑运算符如下:

运算符 描述 示例
&& 5 > 3 && 2 < 4 (返回 1)
|| 5 > 3 || 2 > 4 (返回 1)
! !(5 > 3) (返回 0)

位运算符

位运算符用于按位操作数。C 语言中常见的位运算符如下:

运算符 描述 示例
& 按位与 5 & 3 (返回 1)
| 按位或 5 | 3 (返回 7)
^ 按位异或 5 ^ 3 (返回 6)
~ 按位取反 ~5 (返回 -6)
<< 左移 5 << 2 (返回 20)
>> 右移 5 >> 2 (返回 1)

示例

以下是一些 C 语言运算符的示例:

cCopy Code
#include <stdio.h> int main() { int a = 10, b = 5, c; c = a + b; printf("a + b = %d\n", c); c = a - b; printf("a - b = %d\n", c); c = a * b; printf("a * b = %d\n", c); c = a / b; printf("a / b = %d\n", c); c = a % b; printf("a %% b = %d\n", c); a++; printf("a++ = %d\n", a); b--; printf("b-- = %d\n", b); if (a > b) { printf("a 大于 b\n"); } if (a == b) { printf("a 等于 b\n"); } if (a != b) { printf("a 不等于 b\n"); } if (a && b) { printf("a 和 b 都为真\n"); } if (a \|\| b) { printf("a 或 b 至少一个为真\n"); } if (!a) { printf("a 为假\n"); } c = a & b; printf("a & b = %d\n", c); c = a \| b; printf("a \| b = %d\n", c); c = a ^ b; printf("a ^ b = %d\n", c); c = ~a; printf("~a = %d\n", c); c = a << 2; printf("a << 2 = %d\n", c); c = a >> 2; printf("a >> 2 = %d\n", c); return 0; }

上面的代码将输出以下结果:

Copy Code
a + b = 15 a - b = 5 a * b = 50 a / b = 2 a % b = 0 a++ = 11 b-- = 4 a 大于 b a 不等于 b a 和 b 都为真 a 或 b 至少一个为真 ~a = -11 a << 2 = 44 a >> 2 = 2