C语言中有一系列的操作符,这些操作符你是否都认识呢?
想要学好C语言首先你得有一种空杯心态,所以不管认不认识都和我们一起再看一遍吧!
C语言中的操作符:C语言中主要包括算术操作符、移位操作符、位操作符、赋值操作符、单目操作符、关系操作符、逻辑操作符、条件操作符、逗号表达式等。
算数操作符:+、-、*、/、%这些操作符中分别是加减乘除和摸(%)每个操作符的使用与区别,让我们一起来康康!
先看看 / 和 % 的区别吧!
其实a/b的结果就是a除以b的商,而a%b就是a除以b所得的余数,就像代码中7除以2商3余1,所以7/2等于3,而7%2等于1。很多人认为第一个打印不应该是3.5吗?其实它们两个都是int类型,只有整数,没有浮点数,所以打印出来是3而不是3.5;
再来看看移位操作符:<< >>
先讲讲左操作符,与右操作符相似!
为什么结果是14呢?其实数字在电脑中是以二进制方式存储的:一个int类型是4个字节,一个字节8个比特位,也就是说int 有32个比特位
先看看a的存储方式
0000000 00000000 00000000 00000111 a 以二进制转换十进制 结果为:7
0000000 00000000 00000000 00001110 a<<1 以二进制转换十进制 结果为:14
如果不理解的话多去参考计算机如何用二进制、八进制、十六进制之间的相互转换!
先看看& | ^这三个操作符:
位操作符的运算机制很相似,只是规则不同而已。它们都是先把待操作数转化为二进制,将它们二进制每一位的数字进行比较,然后进行操作。
&:二进制对应位两个都为1则为1,否则为0。
|:二进制对应位两个都为0则为0,否则为1。
^:二进制对应位相同则为0,不同则为1。
赋值运算操作符: =、+=、-=、*=、/=、&=、|=、^=、<<=、>>=
至于其他的运算操作符也是类似的,都是可以推理出来的;我就不一一介绍了;
操作符 | 操作符的作用 |
---|---|
! | 逻辑反操作 |
- | 负值 |
+ | 正值 |
& | 取地址 |
sizeof | 操作数的类型长度(以字节为单位) |
~ | 对一个数的二进制按位取反 |
- - | 前置、后置- - |
++ | 前置、后置++ |
* | 间接访问操作符(解引用操作符) |
(类型) | 强制类型转换 |
单目操作符,顾名思义其操作数只有一个。
关系操作符: >、>=、<、<=、!=、==
关系操作符比较简单,但要注意使用 ==时,不要写成=了,初学者需要特别注意这一点。
逻辑操作符:&& ||:
&&:这个操作符用来判断两边是否为真,如果两边都为真那么就是真,其中有一个是假那么就是假,只有两边都为真才能是真,否则为假!
||:这个操作符用来判断两边是否为真,如果两边为假那么就是假,其中有一个为真那么就是真,只有两边都为假才能是假!
条件操作符:x>y?x:y(expr1?expr2:expr3):
该表达式中,如果expr1为真,则返回expr2的值,否则返回expr3的值
总结
以上就是今天分享的全部内容,希望可以给大家带来帮助,我们一同学习,一同进步;谢谢!