У меня есть две системы с прямым порядком байтов при передаче данных между ними, это происходит в порядке байтов в сети, то есть, с прямым порядком байтов, но все же я получаю данные правильно. Значит ли это, что компилятор автоматически позаботится об этом и преобразует его?
1 ответ
Нет, это не так. Но ваш сетевой стек, вероятно, делает.
Смотрите также статью в Википедии о порядке байтов и, в частности, RFC1700.
По сути, некоторые влиятельные люди решили, что порядок сетевых байтов в большинстве случаев должен быть Big Endian. Имейте в виду, что это не обязательно должно применяться ко всем слоям, просто в большинстве случаев порядок сетевых байтов будет Big Endian, и, надеюсь, ваша система имеет достаточно абстракции, которую вам не нужно беспокоиться.
Ваша фактическая платформа также является важным фактором, так что компилятор заботится об этом до определенного момента, потому что в большинстве распространенных сценариев вас это не волнует.