你们能解释一下以下程序吗?
int main()
{
int max = ~0;
printf("%d\n",max);
return 0;
}
AFAIK ~会翻转位。在这种情况下,即~0将把所有位设置为1。因此,max变量应该包含MAX值,但我得到的输出是-1。所以,有没有人能告诉我为什么我得到的输出是-1。
%u
)必须匹配才能正常工作。如果它们不匹配,则会出现未定义的行为。 - R.. GitHub STOP HELPING ICE