1. 简介
操作符是一种告诉编译器执行特定的数学或逻辑操作的符号。C语言中的操作符包括算术操作符、关系操作符、逻辑操作符、位操作符等。
2. 算术操作符
算术操作符用于执行常见的数学运算。
- 加法 (
+) - 减法 (
-) - 乘法 (
*) - 除法 (
/) - 取模(求余数)(
%)
示例:
int a = 10, b = 4;
int sum = a + b; // 14
int diff = a - b; // 6
int prod = a * b; // 40
int quot = a / b; // 2
int rem = a % b; // 2
3. 关系操作符
关系操作符用于比较两个值之间的关系。
- 等于 (==)
- 不等于 (
!=) - 大于 (
>) - 小于 (
<) - 大于等于 (
>=) - 小于等于 (
<=)
示例:
int a = 10, b = 20;
int res1 = (a == b); // 0 (假)
int res2 = (a != b); // 1 (真)
int res3 = (a > b); // 0 (假)
4. 逻辑操作符
逻辑操作符用于组合多个条件。
- 逻辑与 (
&&) - 逻辑或 (
||) - 逻辑非 (
!)
示例:
int a = 1, b = 0;
int res1 = (a && b); // 0 (假)
int res2 = (a || b); // 1 (真)
int res3 = (!a); // 0 (假)
5. 位操作符
位操作符用于执行位级操作。
- 按位与 (
&) - 按位或 (
|) - 按位异或 (
^) - 按位非 (
~) - 左移 (
<<) - 右移 (
>>)
示例:
int a = 4; // 二进制 0100
int b = 5; // 二进制 0101
int res1 = a & b; // 4 (二进制 0100)
int res2 = a | b; // 5 (二进制 0101)
int res3 = a ^ b; // 1 (二进制 0001)
6. 赋值操作符
赋值操作符用于将值分配给变量。
- 简单赋值 (=)
- 加赋值 (
+=) - 减赋值 (
-=) - 乘赋值 (
*=) - 除赋值 (
/=) - 取模赋值 (
%=) - 左移赋值 (
<<=) - 右移赋值 (
>>=) - 按位与赋值 (
&=) - 按位异或赋值 (
^=) - 按位或赋值 (
|=)
示例:
int a = 10;
a += 5; // a = a + 5 -> a = 15
7. 其他操作符
- 逗号操作符 (
,) - 条件操作符 (
? :) - sizeof 操作符
- & (取地址操作符)
-
- (指针操作符)
示例:
int a = 10;
int *p = &a; // p 是 a 的地址
int size = sizeof(a); // 获取 a 的大小
int max = (a > 5) ? a : 5; // 条件操作