大家好,这里是小编的博客频道
小编的博客:就爱学编程
很高兴在
CSDN
这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!!
本文目录
- 引言
- 正文
- 1. 算术操作符
- 2. 关系(比较)操作符
- 3. 逻辑操作符
- 4. 位操作符
- 5. 赋值操作符
- 6. 其他操作符
- # 快乐的时光总是短暂,咱们下篇博文再见啦!!!不要忘了,给小编点点赞和收藏支持一下,在此非常感谢!!!
引言
C语言是一种功能强大且灵活的编程语言,提供了丰富的操作符用于执行各种运算。这些操作符可以分为几大类:算术操作符、关系(比较)操作符、逻辑操作符、位操作符、赋值操作符以及其他一些特殊操作符。下面是对各类操作符的简单解释和示例。一起跟着小编来看看吧!!!
那接下来就让我们开始遨游在知识的海洋!
正文
算术操作符作为最常用的操作符,常用于执行基本的数学运算。一起看看吧
1. 算术操作符
-
加法 (
+
): 两个操作数相加。int a = 5 + 3; // a 的值为 8
-
减法 (
-
): 从第一个操作数中减去第二个操作数。int b = 10 - 4; // b 的值为 6
-
乘法 (
*
): 两个操作数相乘。int c = 7 * 2; // c 的值为 14
-
除法 (
/
): 分子除以分母。如果两个操作数都是整数,结果也是整数(小数部分被丢弃)。而有一个为浮点数结果就为浮点数int d = 20 / 4; // d 的值为 5 float e = 20.0 / 4; // e 的值为 5.0
-
取模 (
%
): 求余数。int f = 20 % 3; // f 的值为 2
-
自增 (
++
): 操作数的值增加1。int g = 5; g++; // g 的值为 6
-
自减 (
--
): 操作数的值减少1。int h = 5; h--; // h 的值为 4
关系操作符用于比较两个操作数的大小或相等性。
2. 关系(比较)操作符
-
等于 (
==
): 检查两个操作数是否相等。if (a == b) { /* 如果 a 和 b 相等 */ }
-
不等于 (
!=
): 检查两个操作数是否不相等。if (a != b) { /* 如果 a 和 b 不相等 */ }
-
大于 (
>
): 检查左操作数是否大于右操作数。if (a > b) { /* 如果 a 大于 b */ }
-
小于 (
<
): 检查左操作数是否小于右操作数。if (a < b) { /* 如果 a 小于 b */ }
-
大于等于 (
>=
): 检查左操作数是否大于或等于右操作数。if (a >= b) { /* 如果 a 大于或等于 b */ }
-
小于等于 (
<=
): 检查左操作数是否小于或等于右操作数。if (a <= b) { /* 如果 a 小于或等于 b */ }
逻辑操作符用于布尔值的组合运算。
3. 逻辑操作符
-
逻辑与 (
&&
): 当且仅当两个操作数都为真时,结果为真。if (a > 0 && b > 0) { /* 如果 a 和 b 都大于 0 */ }
-
逻辑或 (
||
): 只要有一个操作数为真,结果就为真。if (a > 0 || b > 0) { /* 如果 a 或 b 中至少一个大于 0 */ }
-
逻辑非 (
!
): 将操作数的布尔值反转。if (!a) { /* 如果 a 为假 */ }
位操作符对整数的二进制表示进行操作。
4. 位操作符
-
按位与 (
&
): 对应位都为1时,结果为1。int i = 5 & 3; // i 的值为 1 (二进制: 0101 & 0011 = 0001)
-
按位或 (
|
): 对应位只要有一个为1,结果为1。int j = 5 | 3; // j 的值为 7 (二进制: 0101 | 0011 = 0111)
-
按位异或 (
^
): 对应位不同则结果为1。int k = 5 ^ 3; // k 的值为 6 (二进制: 0101 ^ 0011 = 0110)
-
按位取反 (
~
): 将所有位翻转。int l = ~5; // l 的值为 -6 (二进制: ~0101 = 1010 -> 补码形式为 -6)
-
左移 (
<<
): 将位的二进制表示向左移动若干位,右边补0。int m = 5 << 1; // m 的值为 10 (二进制: 0101 << 1 = 1010)
-
右移 (
>>
): 将位的二进制表示向右移动若干位,左边补符号位(正数补0,负数补1)。int n = 5 >> 1; // n 的值为 2 (二进制: 0101 >> 1 = 0010)
赋值操作符用于给变量赋值。
5. 赋值操作符
-
简单赋值 (
=
): 将右侧的值赋给左侧的变量。int o = 10;
-
复合赋值: 结合算术或位操作符进行赋值。
int p = 5; p += 3; // 等同于 p = p + 3; p 的值为 8 p *= 2; // 等同于 p = p * 2; p 的值为 16
6. 其他操作符
-
条件操作符 (
?:
): 三元操作符,根据条件选择两个值中的一个。int q = (a > b) ? a : b; // 如果 a > b,q 的值为 a;否则为 b
-
逗号操作符 (
,
): 用于顺序求值,返回最后一个表达式的值。int r = (a, b, c); // r 的值为 c
-
sizeof 操作符: 返回数据类型或对象在内存中的大小(以字节为单位)。
size_t s = sizeof(int); // s 的值为 int 类型的大小(通常是 4)
-
地址 (
&
) 和 解引用 (*
): 分别用于获取变量的地址和解引用指针。int t = 10; int *ptr = &t; // ptr 存储 t 的地址 int u = *ptr; // u 的值为 10