Я начинаю видеть функции в классах, но у меня есть некоторые сомнения. Почему мой код выдает «Ошибка сегментации (ядро выгружено)», когда я использую их с функциями?
Я уже пытался использовать глобальные переменные с матрицей, но я хочу использовать их как локальные переменные и передавать их функциям.
void matrixDimension();
void fillMatrix();
void imprimirmatrix();
int main()
{
int dimension;
matrixDimension(&dimension);
int matrix[dimension][dimension];
srand(time(NULL));
fillMatrix(matrix, dimension);
}
void matrixDimension(int *dimension)
{
do{
printf("\nEnter the size of the matrix:");
scanf("%i", dimension);
}while(2>*dimension);
}
void fillMatrix(int dimension, int matrix[dimension][dimension])
{
int i,j;
for(i=0;i<dimension;i++)
for(j=0;j<dimension;j++)
matrix[i][j]=rand()%2;
}
Когда я компилирую его с помощью gcc, иногда случайно появляется ошибка Сегментация (сбрасывается ядро). Как я могу исправить эту ошибку?