Почему int
обычно 32-битный на 64-битных компиляторах? Когда я начинал программировать, меня учили int, как правило, той же ширины, что и базовая архитектура. И я согласен с тем, что это также имеет смысл, я считаю логичным, что неопределенное целочисленное значение ширины будет таким же широким, как и базовая платформа (если мы не говорим о 8 или 16-разрядных машинах, где такой небольшой диапазон для int
будет едва ли применим).
Позже я узнал, что int
обычно 32 бит на большинстве 64-битных платформ. Поэтому я задаюсь вопросом, в чем причина этого. Для хранения данных я бы предпочел явно заданную ширину типа данных, так что это оставляет общее использование для int
, которое не дает каких-либо преимуществ по производительности, по крайней мере, в моей системе. У меня такая же производительность для 32 и 64-битных целых чисел, Таким образом, это оставляет двоичный объем памяти, который будет немного уменьшен, хотя и не много...