From 193232e7df86b4984b252e59665df93588f63e71 Mon Sep 17 00:00:00 2001 From: eberlesa100217 Date: Wed, 5 Nov 2025 14:18:39 +0100 Subject: [PATCH] . --- matrix.c | 21 +++++++++++++++++++-- matrix.h | 5 +++++ 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/matrix.c b/matrix.c index ad00628..4091972 100644 --- a/matrix.c +++ b/matrix.c @@ -6,12 +6,29 @@ Matrix createMatrix(unsigned int rows, unsigned int cols) { - + Matrix m; + m.rows = rows; + m.cols = cols; + m.data = (MatrixType*) calloc(rows * cols, sizeof(MatrixType)); + if(m.data == NULL){ + m.rows = 0; + m.cols = 0; + + } + return m; } void clearMatrix(Matrix *matrix) { - + if(matrix == NULL){ + return -1; + } + if(matrix->data != NULL){ + free(matrix->data); + matrix->data = NULL; + } + matrix->rows = 0; + matrix->cols = 0; } void setMatrixAt(MatrixType value, Matrix matrix, unsigned int rowIdx, unsigned int colIdx) diff --git a/matrix.h b/matrix.h index cc640d1..68b4dbb 100644 --- a/matrix.h +++ b/matrix.h @@ -6,6 +6,11 @@ typedef float MatrixType; // TODO Matrixtyp definieren +typedef struct{ + int rows; + int cols; + MatrixType* data; +}Matrix; Matrix createMatrix(unsigned int rows, unsigned int cols);