c - 按位运算符

标签 c bit-manipulation

我是 C 的初学者,我正在自学。 我正在尝试将 int 转换为二进制以进行按位运算,但我不确定该怎么做?我尝试过用mod和其他数学来做,但一直没有成功。我四处搜寻,但没有找到明确的方法。请协助。

最佳答案

您无需对 int 进行任何转换即可在其上使用按位运算符。它们自动处理构成 int

如果你想查看一个数的二进制表示,你可以使用(假设8个最低有效位)...

int num = 4;

int i;

for (i = 7; i >= 0; i--) {
    printf("%d", (num >> i) & 1);
}

CodePad .

这使用按位运算符 >>>(右移)和 &(与)。

关于c - 按位运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12344148/

相关文章:

c - abs 没有分支,为什么这段代码有效

c - 如何查看多个用户组?

在 ubuntu 中将数字文字从 64 位编译器转换为 32 位编译器

c++ - 将 uint64_t 截断为 uint8_t[i] 时是否应该使用位掩码?

C中的字符指针

C 编程 - 来自 rand() 的奇怪输出

c - 在VS2015中,如何避免每次启动而不调试(ctrl+f5)时使用系统("pause")?

c# - 将位数组转换为 uint 或类似的打包值

单位与多位的 c 位操作

c++ - 创建无符号 80 位变量