Из-за некоторых библиотек мне приходится компилировать свое приложение в 32-битной версии, но мне нужно использовать целочисленные переменные, которые превышают максимальное количество 32-битных типов.Так, например, если я пытаюсь использовать uint64_t
, я получаю переполнение при 2147483647
.
Я думал, что можно использовать 64-битные целочисленные переменные в 32-битном приложении, так что я здесь упустил?Нужно ли включать какой-то конкретный заголовок или мне нужно установить какую-то опцию?Используя VS17.
РЕДАКТИРОВАТЬ:
Я провел некоторое тестирование, и в этом примере программы, я могу воспроизвести мою проблему переполнения.
#include <iostream>
int main()
{
uint64_t i = 0;
while (true)
{
std::printf("%d\n",i);
i += (uint64_t)10000;
}
return 0;
}