Всегда ли Endianness является проблемой, которую необходимо учитывать? - PullRequest
2 голосов
/ 04 июня 2011

Предположим, что мы отправляем некоторые данные по сети ... я понимаю, что Endianness безусловно является проблемой, поскольку мы не знаем, что ожидает принимающая машина и какая отправляющая машина отправит. Как правило, это правильно?

Зависит ли ответ от типа отправляемых данных, скажем, имеет ли значение, если мы отправляем C-строку против 4-байтового плавающего элемента в стиле IEEE, например?

1 Ответ

2 голосов
/ 04 июня 2011

Да, порядковый номер всегда необходимо учитывать и определять в сетевом протоколе. Это влияет на все типы, которые больше, чем один байт. Таким образом, C-строка на основе char не будет затронута ею, так как это просто массив одиночных байтов, но строка на основе wchar_t должна быть преобразована, если одна из машин имеет младший и второй байты , То же самое относится ко всем большим типам лайков int и float и т. Д.

...