Я получаю предупреждение:
matrixResult 'используется неинициализированным в этой функции [-Wuninitialized]
в этой функции:
int **addMatrices(int **matrixA, int **matrixB, int *rows, int *cols) {
int **matrixResult = initializeMatrix(matrixResult, rows, cols);
for (int i = 0; i < *rows; i++)
for (int j = 0; j < *cols; j++)
matrixResult[i][j] = matrixA[i][j] + matrixB[i][j];
return matrixResult;
}
Но здесь он инициализируется:
int **initializeMatrix(int **matrix, int *rows, int *cols) {
matrix = (int **)malloc((*rows) * sizeof(int*));
checkNullPointer(matrix);
for(int i = 0; i < *rows; i++) {
matrix[i] = (int *)calloc(*cols, sizeof(int));
}
return matrix;
}
не так ли? Я пытался найти ответ, но все просто говорят, что 2D-массив должен быть выделен. Но я думаю, что это входит в мой код. Кто-нибудь знает, что здесь происходит?