Недавно я начал программировать C
только для удовольствия. Я очень опытный программист в C# .NET
и Java
в области рабочего стола, но для меня это становится слишком сложной задачей.
Я пытаюсь сделать что-то как "простое", возвращая двумерный массив из функции. Я пробовал исследовать в Интернете для этого, но мне было трудно найти что-то, что сработало.
Вот что я до сих пор. Он не совсем возвращает массив, он просто заполняет его. Но даже это не скомпилируется (я уверен, что причины должны быть очевидны для вас, если вы опытный программист C
).
void new_array (int x[n][n]) {
int i,o;
for (i=0; i<n; i++) {
for (o=0; o<n; o++) {
x[i][o]=(rand() % n)-n/2;
}
}
return x;
}
И использование:
int x[n][n];
new_array(x);
Что я делаю неправильно? Следует отметить, что n
является константой, которая имеет значение 3
.
Изменить. Здесь возникает ошибка компилятора при попытке определить константу: http://i.imgur.com/sa4JkXs.png