Это будет вопрос о новичке, но я пытался работать над небольшим упражнением на языке C (а не на С++), и у меня возникали некоторые проблемы.
Скажем, я хотел использовать массив внутри метода, размер которого зависел от одного из аргументов:
void someFunc(int arSize)
{
char charArray[arSize];
// DO STUFF
...
}
Когда я пытаюсь скомпилировать это как файл .c
в Visual Studio 2013, я получаю сообщение о том, что размер непостоянного массива не разрешен. Однако тот же код работает в CodeBlocks под компилятором GNU. К чему я должен доверять? Это нормально для компиляторов вести себя по-другому? Я всегда думал, что если вы делаете то, что не нравится компилятору, вы не должны делать это в первую очередь, потому что это не стандарт.
Любой ввод полезен! Я исхожу из фона в Python, и я пытаюсь более активно участвовать в программировании с помощью Data-Structures and Algorithms.
Моя платформа - это Windows, как вы, вероятно, можете сказать. Пожалуйста, дайте мне знать, если этот вопрос нуждается в дополнительной информации, прежде чем можно будет ответить.