Интересно, стоит ли продолжать использовать int
(который является 32-разрядным как для x86, так и для x86_64) для 64-битных программ для переменных, которые не имеют ничего особенного и на самом деле не должны охватывать до 2 ^ 64, как итерационные счетчики, или если лучше использовать size_t
, который соответствует размеру слова процессора.
Конечно, если вы продолжаете использовать int
, вы сохраняете половину памяти, и это может означать что-то, говорящее о кэше CPU, но я не знаю, если на 64-битной машине каждое 32-разрядное число должно быть расширено до 64 бит перед любым использованием.
EDIT: Я проверил некоторый тест с помощью моей программы (см. сам ответ, я все еще держу janneb как принято, хотя, потому что это хорошо). Оказывается, что есть значительное улучшение производительности.