位运算符(一):C/C++位运算符(原理解释+优缺点)

蓝桥杯 专栏收录该内容
2 篇文章 0 订阅

使用范围:这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。
在实际应用中,建议用unsigned整型操作数,因为带符号操作数可能因为不同机器结果不同。

先引入下面的部分。

C语言算术运算符与位运算符
link
这篇就基本原理还讲了一下作用,虽然是很显然的作用,用原理一下就能推出来,但是值得看一下。很简单,不会浪费几十秒的。

位运算符(一):C/C++位运算符
link这篇讲得很细,有例子方便理解。

在今天看大佬写快速幂的时候,见到了位运算,一个是row&1用来判断奇偶。还有就是>>1用来除2.
身为一个即将乃志明天有可能就成为大佬的人,看到后,立即搜索这两个不认识的符号,了解意义后(请确定已经掌握位运算符的使用方法 )问题来了:

  1. 已经可以用算术运算符来解决的问题,问什么判断奇偶和除以2要用位运算符来解决呢!(小声嘀咕:难道是大佬故意写得让我看不懂
  2. 位运算这种比算术运算抽象的算术运算究竟有什么用呢?
    这里的用处为计算和权限管理
  3. 出现位运算和算术运算都能解决问题的时候,靠什么标准来选择用哪一个呢。
    这里是个人理解,网上实在是找不到相关的帮助和解释。在同样适用的情况下,推荐用位运算符,因为位运算符它直接是对二进制进行操作,而算术运算本质上也是对二进制进行操作,直观来看,位运算的抽象程度要更高,也就是说比算术运算要省下一步转换的过程。效率应该更高。
  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值