为什么在前面加零时我的代码给出不同的输出?

时间:2020-02-26 15:38:13

标签: bit

谁能解释为什么输出为65?

    #include <stdio.h>

    int main()
    {
        int b=0101;
        printf("%d",b);

        return 0;
    }

1 个答案:

答案 0 :(得分:1)

因为0101是一个八进制数字(以8为底)。在C中,八进制数字从0开始。因此它是64 * 1 + 8 * 0 + 1 * 1 =65。

相关问题