Теперь, если я сделаю &a
, я получу 1000 с прямым порядком байтов и 1001 с прямым порядком байтов.
Нет;на обеих машинах вы получите адрес 1000.
Если это так, то если я храню int a = 1, тогда я должен получить a = 1 для младшего порядка, тогда как 2 ^ 15 для старшего порядка.Это правильно?
Нет;потому что предварительное условие ложно.Кроме того, если вы присвоите 1 переменной, а затем снова прочитаете значение, вы получите результат 1 обратно.Все остальное будет основной причиной путаницы.(Бывают случаи, когда это (чтение сохраненного значения) не гарантируется, например, если переменная может изменяться несколькими потоками или это регистр ввода-вывода во встроенной системе. Однако вы должны знать,из них, если вам нужно было знать об этом.)
В большинстве случаев вам не нужно беспокоиться о порядке байтов.Есть несколько мест, где вы делаете.Сетевые функции сокетов являются одним из таких;запись двоичных данных в файл, который будет передаваться между машинами с различным порядком байтов, - это другое.Почти все остальное время вам не о чем беспокоиться.