diff --git a/matrix.c b/matrix.c index ad00628..b6dcaca 100644 --- a/matrix.c +++ b/matrix.c @@ -6,7 +6,25 @@ Matrix createMatrix(unsigned int rows, unsigned int cols) { - + Matrix m; + m.rows = rows; + m.cols = cols; + m.data = NULL; + + if(rows == 0 || cols == 0) + { + return m; + } + + m.data = calloc(rows * cols, sizeof(MatrixType)); + if (m.data == NULL) + { + m.rows = 0; + m.cols = 0; + return m; + } + + return m; } void clearMatrix(Matrix *matrix)