Взято из http://en.wikipedia.org/wiki/64-bit (под 64-bit data models
)
Существуют различные модели, Microsoft решила, что sizeof(int) == 4
, некоторые (несколько) другие этого не сделали.
* 1008Порт HAL Computer Systems от Solaris до SPARC64 и Unicos, кажется, единственные, где
sizeof(int) == 8
.Они называются моделями ILP64 и SILP64.
Настоящая «война» была за sizeof(long)
, где Microsoft решила за sizeof(long) == 4
(LLP64), тогда как почти все остальные решили за sizeof(long) == 8
(LP64).
Обратите внимание, что на самом деле именно компилятор "решает", какую модель использовать, но как написано в вики
Обратите внимание, что модель программирования является выбором, сделанным для каждого компилятораи несколько могут сосуществовать в одной ОС.Тем не менее, модель программирования, выбранная в качестве основной модели для API OS, обычно доминирует.