Diw*_*rma -2 c hex bitwise-operators octal
我觉得我遗漏了一些关于数字系统的基本知识,但我真的很困惑我正在尝试使用按位运算符的下面一段代码:
x=56;
printf("\nHere :\n%x %x\n",x,077);
x=x& ~077;
printf("%x\n",x);
Run Code Online (Sandbox Code Playgroud)
它将077视为八进制(hex 3f).如果我只放77,则将其视为十进制(十六进制4d).如果放177,则将其视为十进制(十六进制b1).我指的是Richie和Kernighan的C编程书.
请帮忙.
完全符合预期.从0开始,它是八进制.从0x开始,它是十六进制.否则,它是十进制的.
问题是什么?