C语言运算符(最重要的知识点)

说起操作符,我们会想到最基本的比如 “+”“-”“*”“/”,复杂点的像一些换行符,双目运算符,三目运算符,运算符的使用离不开优先级,只有掌握了运算符的优先级,才可以正确的使用这些。由于运算符具有循环所不具有的优势,因此,在一个程序中,如果再合适的地方使用运算符,可以大大减少代码量,并且提供简洁明了的思路,那么我今天就把我最近学到的一些关于运算符的知识分享出来。

1.最容易出错的运算符->逗号运算符

为什么说它是最容易出错的运算符呢,逗号运算符的特点是,不管一个表达式有多少结果,最后的结果一定是最后一个的结果,在for循环中,如果你不小心把;写成了,那么运算有可能会成功但是结果一定不会是你想要的,所以在这里一定要小心哦。逗号运算符在有些地方还是很有用的。逗号操作符使源程序更易于维护,所以要想合理使用,那就得分情况咯。

2.唯一的三目操作符->条件操作符

条件操作符是目前唯一一个三目操作符,也很好记 ()?():(),括号里面就是想要写入的表达式。条件运算符的特点是,如果第一个的表达式为真,那就执行第二个表达式,否则执行第三个表达式,三目操作符的出现可以简化 if else语句,因为两者同样的地方就在于不管条件真假,都会执行一个表达式或者语句。在适当的地方使用三目运算符,可以大大减少代码量,着实是一个很不错的操作符。

3.最不可思议的操作符 ->sizeof() 操作符

乍一看,这个操作符是不让你觉得很熟悉啊,没错,这个在求数组长度的时候用的很频繁,然而,我们那时候肯定没想到这是一个操作符啊,但是它确实就是啊。sizeof()操作符的括号里面可以使类型名,数组名当然可以使表达式,比如这样的(a+b=3)

和sizeof操作符类似的还有一个strlen()不过这个就不是操作符了,它是头文件包涵下的一个函数,可以直接调用来求长度。

4.最可能理解错的操作符 ->*操作符

*操作符是间接访问操作符,它是和指针一起使用的。因此当它出现的时候,通常都是用来表示一个指针的,但是需要注意的是,如果一个表达式比如 *b=a ,在这里的b是一个地址,而*就是指向b的地址,因此*b才是a的值,在这里需要注意。很多时候,我们都会犯一个错误,直接printf b,这时候得到的一串数字你就不认识,这就是数据的地址,应该尤其注意

5.和 *操作符一起使用的运算符 ->&操作符

&操作符用到的地方不是很多,通常是和指针一起连用的。&操作符是取地址用的。指针就是指向数据元素的地址,也就是存放的空间,当你取出这个地址的时候,也就是取出来了存储的值,因此 &b(这里的b是一个指针)和 *b(这里的b是地址)无条件等价

6.最难理解的操作符->位操作符

位操作符 很多,这里我就挑几个比较有特征的介绍一下

1.按位与操作符 &(这里的&可和上面的不一样哦)

按位与操作符通常是在二进制位上进行的操作。这里就拿整形数据来说吧。int型数据一般是32位,而数据在内存中都是以二进制存在的,存储数字不是0就是1.所以进行按位与操作特点为相同为0,相异为1,&操作符的使用可以使得数据的操作变得简单很多,因为二进制位的移动是最低级的操作,不需要调用其他的函数,因此效率也是很高的

2.按位或^操作符

和按位与操作符类似,相同为1,相异为0,适用于二进制数据

3.或 |运算符

这个操作符的特点是两个位数都是1的时候为1,否则都是0

7.使用最频繁的操作符  + -* /操作符

数据的各种操作都离不开这些最基本的运算符,这些符号的使用使得数据操作很方便。但是有一个缺点就是,数据的加减二进制下进行操作还很方便,因为可以满2进1,但是乘除运算就需要调用包含在头文件的函数了,所以效率不高,如果可以的话,最好直接使用位操作符。

总结:操作符很多,但是经常要用到的也就是那些,只要熟悉那些操作符对应的使用规则还有操作符的优先级,那么过不了多久你就可以熟练掌握了。


  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值