В следующем сегменте кода будет:
- результат функции
- значение x
- значение y
{ unsigned int x=-1; int y; y = ~0; if(x == y) printf("same"); else printf("not same"); }
a. same, MAXINT, -1 b. not same, MAXINT, -MAXINT c. same , MAXUINT, -1 d. same, MAXUINT, MAXUINT e. not same, MAXINT, MAXUINT
Может кто-нибудь объяснить мне, как это работает или может просто объяснить фрагмент?
Я знаю это о двух дополнениях n и т.д. Каково значение MAXINT и -1? Это из-за неподписанных int и int вещей - я прав?