From 4d4e9a38e1a865c6ec3db67d77899eaf831b33aa Mon Sep 17 00:00:00 2001 From: Jakob Stornig Date: Tue, 19 Sep 2023 11:28:51 +0200 Subject: [PATCH] matrix save and merge conflicts --- matrix.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/matrix.c b/matrix.c index 7954e59..916f4f4 100644 --- a/matrix.c +++ b/matrix.c @@ -244,6 +244,21 @@ Matrix* transpose(Matrix* matrix) { } +//file operations +void matrix_save(Matrix* matrix, char* file_string){ + FILE *fptr = fopen(file_string, "w+"); + if(!fptr){ + printf("Unable to get handle for \"%s\"", file_string); + exit(1); + } + for(int i = 0; i < matrix->rows; i++){ + for(int j = 0; j < matrix->columns; j++){ + fprintf(fptr, "%f.12 ", matrix->numbers[i][j]); + } + fputc('\n', fptr); + } +} + Matrix* matrix_flatten(Matrix* matrix, int axis) { // Axis = 0 -> Column Vector, Axis = 1 -> Row Vector @@ -265,5 +280,5 @@ Matrix* matrix_flatten(Matrix* matrix, int axis) { else if (axis == 1) result_matrix->numbers[0][i * matrix->columns + j] = matrix->numbers[i][j]; } } - return mat; + return result_matrix; }