Это слишком большой для стека. Вместо этого вам нужно разместить его в куче с помощью malloc.

отаю над приложением, где есть три возможных размера для введенных данных:

маленький: 1000 элементовсредний = 5000 элементовбольшой = 500 000 элементов

Проблема в том, что я не могу выделить большой массив. Кажется, что размер больше 5000 не принимается.

Я получаю ошибку во время выполнения, когда я делаю следующее:

long  size=1000;
char ch;
int arr[size];
ch=getch();

if(ch==..)
  size=...;

Размеры 1000 и 5000, кажется, работают нормально, но как я могу сделать массив размером 500 КБ таким образом?

Ответы на вопрос(3)

Ваш ответ на вопрос