при объявлении статического массива его размером должна являться числовая константа, а не просто переменная..
если память под массив нужно выделить уже во время выполнения программы, то для этого используется динамическое выделение памяти(динамический массив), память под который выделяется:
Это я прекрасно понимаю.
Вы не ответили почему нужно делать именно так, я понимаю если бы это было синтаксически не корректно, но Dev это спокойно пропускает, вопрос может в том, что не красиво ? Поясните пожалуйста.