Как новичок, столкнулся с проблемой, что если на момент компиляции кода размер массива не известен, то конструкция в виде
int n;
cin >> n;
int arr[n];
просто не сработает. Но мне очень бы хотелось, чтобы размер массива задавал конечный пользователь, не используя при этом библиотеку классов STL или реализацию через указатели. Я знаю, что для этого следовало бы использовать динамический массив или список. Но меня интересует вопрос: чем обусловлено такое ограничение? Почему компилятор не дает создать такую конструкцию?