c - 对数据类型 c 使用 & 位运算符
问题描述
嗨,我偶然发现了这行用 c 编写的代码:
uint64_t rsp = (uint64_t) & (base);
其中 base 也是 uint64_t 类型的变量。
变量和数据类型之间的 AND 运算符有什么作用?
解决方案
我认为这条线的格式化方式增加了混乱。在 C 代码中,在一元运算符 ( &
) 和它的操作数 ( base
) 之间不写空格是很常见的。周围也不是多余( )
的。base
这更清楚:
uint64_t rsp = (uint64_t)&base;
&base
接受 , 的地址base
并且(uint64_t)
是一个演员表。
推荐阅读
- wordpress - 我设置为主页的每个页面都不适合移动设备上的屏幕。但作为页面它确实
- swift - jsonSerializationFailed(错误:错误域 = NSCocoaErrorDomain 代码 = 3840 “字符 11660 周围未转义的控制字符
- javascript - 未排序的表数据与表中的排序数据一起呈现
- python - 按主题中的部分字符串或部分文本过滤 Outlook 邮件
- r - 还有其他人在 R 中安装 Rugarch 包时遇到问题吗?
- c# - 拥有处理所有连接和数据库更新的“DataService”类的最佳方法是什么
- c# - 如何禁用文本框聚焦 C#
- ecmascript-6 - ES6+ 导出默认导出中的导入
- android - 用毕加索加载图片网址的问题
- sql - 基于新行拆分 CLOB 列 - Oracle SQL