- (꒪ꇴ꒪ ),hello我是祐言
- 博客主页:C语言基础,Linux基础,软件配置领域博主🌍
- 快上🚘,一起学习!
- 送给读者的一句鸡汤🤔:
- 集中起来的意志可以击穿顽石!
- 作者水平很有限,如果发现错误,可在评论区指正,感谢🙏
C语言运算符号指的是运算符号,C语言中的符号分为10类:算术运算符、关系运算符、逻辑运算符、位操作运算符、赋值运算符、条件运算符、逗号运算符、指针运算符、求字节数运算符和特殊运算符,接下来我们就来介绍和实现一下他们。
1.基本算数运算符(+ - * / ++ --)
+ | 加法运算符或正号运算符 |
- | 减法运算符或负号运算符 |
* | 乘法运算符(键盘无乘号所以用*代替) |
/ | 除法运算符(键盘无除号所以用/代替) |
++ | 自增运算符 |
-- | 自减运算符 |
(1)加法举例
#include <stdio.h>
int main()
{
int a = 1;
int b = 2;
int c ;
c = a + b;
printf("%d\n",c);
return 0;
}
(2)减法举例
#include <stdio.h>
int main()
{
int a = 5;
int b = 2;
int c ;
c = a - b;
printf("%d\n",c);
return 0;
}
(3) 乘法举例
c = a * b;
(4)除法举例
c = a / b;
补充求余(%)运算符,5除以2求余数为1
int a = 5;
int b = 2;
int c ;
c = a % b;
printf("%d\n",c);
(5)自增++/自减--举例
++i,--i:他们的意思是在使用i之前线使用i的值加或减1,而i++与i--则是在使用i之后,再使i的值加或减1,比较绕口,用代码实现一下就可以很快理解。
#include <stdio.h>
int main()
{
int a = 5;
printf("%d\n",++a);
return 0;
}
#include <stdio.h>
int main()
{
int a = 5;
printf("%d\n",a++);
return 0;
}
减法亦然,这里不做过多演示啦。
2.关系运算符
> | 左操作数的值是否大于右操作数的值,如果是则条件为真 |
< | 左操作数的值是否小于右操作数的值,如果是则条件为真 |
== | 两个操作数的值是否相等,如果相等则条件为真 |
>= | 左操作数的值是否大于或等于右操作数的值,如果是则条件为真 |
<= | 左操作数的值是否小于或等于右操作数的值,如果是则条件为真 |
!= | 两个操作数的值是否相等,如果不相等则条件为真 |
举个简单的例子:
#include <stdio.h>
int main()
{
int a = 5;
int b = 3;
int c = 3;
printf("%d \n",a<b);
printf("%d \n",a>b);
printf("%d \n",a!=c);
return 0;
}
这里的0就是false,为假,而1就是true,为真。
3.逻辑运算符
! | 逻辑非运算符,如果条件为true,则逻辑非运算符将得到false |
&& | 如果两个操作都为真,则条件为真 |
|| | 如果两个操作任意一个非零,则条件为真 |
#include <stdio.h>
int main()
{
int a = 1;
printf("%d \n",!a);
return 0;
}
4.位运算符(二进制)
>> | 右移位操作符 |
<< | 左移位操作符 |
& | 按位与(一假则假) |
| | 按位或(一真则真) |
1&?=? ,0&?=0
1|?=1 , 0|?=?
1^?=~? ,0^?=?
所谓二进制位运算符,就是以二进制位来进行操作,例如整数2的二进制为0010,如果2>>1则新的二进制为0001,就是整数1,下面用代码实现如下:
#include <stdio.h>
int main()
{
int a = 2;
printf("%d \n",a>>1);
return 0;
}
如上所示得到了我们预期的结果1。
那么如果2<<1是什么呢,应该是0100这是整数4的二进制
printf("%d \n",a<<1);
按位与就是在二进制的基础上逐列进行与运算,例如整数2的二进制表示为0010,整数1的二进制表示为0001,按列与之后得到0000,因此输出结果为0,用代码验证一下:
#include <stdio.h>
int main()
{
int a = 2;
int b = 1;
printf("%d \n",a&b);
return 0;
}
可以看到4是上一步演示的结果,新的结果为0,说明验证成功。
5.复合运算符
在C语言中,复合运算符(Compound Assignment Operators)是一类特殊的运算符,用于将算术运算符和赋值操作结合在一起,以简化代码并使其更加高效。复合运算符的一般形式为操作符=
,例如+=
、-=
、*=
、/=
等。
常见的复合运算符及其作用如下:
-
+=
:加等于,将右边的值加到左边的变量,并将结果赋值给左边的变量。例如: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;
-
<<=
:左移等于,将左边的变量向左移动右边的位数,并将结果赋值给左边的变量。例如: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;
复合运算符在C语言中是常用且实用的功能,可以有效地简化代码,并提高代码的可读性和效率。使用复合运算符可以让代码更加简洁,并减少重复的赋值操作。
今天的分享就到这里了,后续更新其他!
更多C语言相关文章,关注专栏:
📢写在最后
- 今天的分享就到这啦~
- 觉得博主写的还不错的烦劳
一键三连喔
~ - 🎉感谢关注🎉