LINUX.ORG.RU

История изменений

Исправление fsb4000, (текущая версия) :

0x80000000 == -0x80000000? Почему?

0xблабла - это беззнаковый тип. Вот почему.

Пока что ещё никто правильно не ответил.

The negative of an unsigned quantity is computed by subtracting its value from 2^n, where n is the number of bits in the promoted operand.
The type of the result is the type of the promoted operand.

https://eel.is/c++draft/expr.unary.op#8

Исходная версия fsb4000, :

0x80000000 == -0x80000000? Почему?

0xблабла - это беззнаковый тип. Вот почему.

Пока что ещё никто правильно не ответил.

The negative of an unsigned quantity is computed by subtracting its value from 2n, where n is the number of bits in the promoted operand.
The type of the result is the type of the promoted operand.

https://eel.is/c++draft/expr.unary.op#8