按位运算符

Hel*_*rld 0 c bit-manipulation

我是C的初学者,我正在自学.我试图将int转换为二进制以进行按位操作,我不确定如何做到这一点?我曾尝试使用mod和其他数学来做到这一点,但我没有成功.我已经四处寻找并且没有找到明确的方法.请协助.

ale*_*lex 6

您不需要对其进行任何转换int即可使用按位运算符.它们会自动处理组成的int.

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

int num = 4;

int i;

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

CodePad.

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