[...] В 1970-х годах 16-битный C (для
PDP-11) первый представленный файл
информация с 16-битными целыми числами,
которые быстро устарели на диске
прогресс. Люди перешли на 32-битный
файловая система, сначала используя int[2]
конструкции, которые были не только
неловко, но не эффективно
перенос на 32-битное оборудование.
Для решения проблемы введите long
был добавлен к языку, хотя
это требовало C на PDP-11 для
генерировать несколько операций для
симулировать 32-битную арифметику. Даже как
32-битные миникомпьютеры стали доступны
наряду с 16-битными системами, люди все еще
используется int
для эффективности, резервирование
long
для случаев, когда большие целые числа
были действительно необходимы, так как long
был
заметно менее эффективен на 16-битной
системы. И short
, и long
были
добавлено в C, что делает short
доступным
для 16 бит, long
для 32 бит и
int
как удобно для исполнения.
Не было никакого желания заблокировать
числа 16 или 32 в язык, как
существовали компиляторы Си по крайней мере
24- и 36-битные процессоры, а точнее
предоставить имена, которые могут быть использованы для
32 бита по мере необходимости.
PDP-11 C мог быть
повторно реализован с int
как 32-бит,
таким образом избегая необходимости для long
; но
это заставило бы людей измениться
большинство применений от int
до short
или
страдать от серьезного снижения производительности
на PDP-11. В добавок к
потенциальное влияние на исходный код,
влияние на существующий объектный код и
файлы данных были бы хуже, даже
в 1976 году, с огромным
установлена база программного обеспечения, а также
Широкое использование динамически связанных
библиотеки, влияние изменения
размер общего объекта данных в
существующая среда настолько высока, что
мало кто будет терпеть это, хотя
это может быть приемлемо при создании
новая среда. Следовательно, многие продавцы,
чтобы избежать конфликтов пространства имен, есть
добавил 64-битное целое число к своему 32-битному
C средах, использующих новое имя, из
который long long
был самым
широко используемый. [...]