Я знаю, что поведение >>
в значении integer может быть зависимым от реализации (в частности, если левый операнд отрицательный).
Как насчет остальных: ~
, >>
, &
, ^
, |
?
Когда их операнды подписаны целыми числами встроенного типа (short
, int
, long
, long long
), гарантируются, что результаты будут одинаковыми (с точки зрения содержимого бит), как если бы их тип был неподписанным