小编tha*_*i03的帖子

打印数字的二进制表示

我想打印一个二进制表示int.我的解决方案似乎对工作都intunsigned int在Visual Studio中,但有人告诉我,这是错误的.有人看到错误吗?如果是这样,为什么我的程序似乎对我有用?

void printbin(int n)
{
    unsigned int i = 1<<31;

    for (int j=0; j<32; j++)
    {
        if ((n & i) != 0)
            printf("1");
        else
            printf("0");
        i = i>>1;
    }

    printf("\n");
}
Run Code Online (Sandbox Code Playgroud)

c bit-manipulation bit

6
推荐指数
1
解决办法
1347
查看次数

标签 统计

bit ×1

bit-manipulation ×1

c ×1