Вероятно, вы просто получаете переполнение стека. Массив слишком велик, чтобы вставлять адресное пространство стека вашей программы.
Если вы выделяете массив в куче, вы должны быть в порядке, если у вас достаточно памяти.
int* array = new int[1000000];
Но помните, что это потребует от вас delete[]
массива. Лучшим решением было бы использовать std::vector<int>
и изменить его размер до 1000000 элементов.