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

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

先引入下面的部分。

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

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

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值