实用的位运算可节省工作时间
我想知道您还使用了哪些其他位和逻辑运算来挽救您的生命。
例如,我的最后一个伟大的时间(和资源)节省程序是
if(!((A^B) & B))
:如果 A 至少具有 B 的访问权限,其中权限保存在位字段 A 和 B 中。
请使用经典运算符: 二进制 & (和)| (或)、^ (异或)、~ (反转) 和逻辑的 && (和),|| (或者), ! (不是)。
I am wondering what other bitwise and logical operations you've used that saved your day.
For example, my last great time (and resources') saver has been
if(!((A^B) & B))
reads: if A has at least B's access rights, where rights were saved in the bit fields A and B.
Please use the classical operators: binary & (and) | (or), ^ (xor), ~ (invert)
and the logical ones && (and), || (or), ! (not).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
强制链接:http://graphics.stanford.edu/~seander/bithacks.html。
Mandatory link: http://graphics.stanford.edu/~seander/bithacks.html.
双重否定规则:
!! value
结果为 1 或 0。double negation rules:
!! value
result in 1 or 0.