Это невероятно маловероятно, но не невозможно в соответствии со стандартом.
Нет ничего, что указывало бы, что является базовым представлением целого числа, разве стандарт не определяет, как загружаются значения.
Iможет предусматривать, как ни странно, реализацию, в которой базовый битовый шаблон для 0 равен 10101010
, и архитектура поддерживает загрузку данных в память только путем сдвига битов в течение восьми циклов, но чтения их как единого блока за один цикл.
Если другой поток считывает значение во время смещения битовой комбинации (например, 00000001
, 00000010
, 00000101
и т. Д.), У вас возникнет проблема.
Возможностилюбой, кто проектирует такую причудливую архитектуру, настолько близок к нулю, что может быть незначительным.Но, к сожалению, это не ноль.Все, что я пытаюсь донести, - это то, что вы вообще не должны полагаться на предположения, когда речь идет о соответствии стандартам.
И, пожалуйста, прежде чем голосовать против меня, не стесняйтесь цитировать часть стандартав котором говорится, что это невозможно: -)