对数据类型 c 使用 & bit 运算符



嗨,我偶然发现了这行用c:编写的代码

uint64_t rsp = (uint64_t) & (base);

其中base也是uint64_t类型的变量。

变量和数据类型之间的AND运算符有什么作用?

我认为这一行的格式化方式增加了混乱。在C代码中,一元运算符(&(和其操作数(base(之间通常不写空格。此外,base周围的( )不是冗余的。

这更清楚:

uint64_t rsp = (uint64_t)&base;

&basebase的地址,而(uint64_t)是一个强制转换。

最新更新