From 84b65525a6c2f6e0b95d4a2a99ad868213cf7643 Mon Sep 17 00:00:00 2001 From: Jan Uhlmann Date: Sun, 23 Nov 2025 12:04:25 +0000 Subject: [PATCH] Funktion implementiert / nicht getestet --- neuralNetworkTests.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/neuralNetworkTests.c b/neuralNetworkTests.c index 21ab370..fb3fb80 100644 --- a/neuralNetworkTests.c +++ b/neuralNetworkTests.c @@ -6,9 +6,30 @@ #include "neuralNetwork.h" +static void erzeugeMatrix(FILE *file, const Matrix *m) +{ + fwrite(&m->rows, sizeof(int), 1, file); + fwrite(&m->cols, sizeof(int), 1, file); + fwrite(m->buffer, sizeof(MatrixType), m->rows * m->cols, file); +} + static void prepareNeuralNetworkFile(const char *path, const NeuralNetwork nn) { - // TODO + FILE *file = fopen(path, "wb"); + if (!file) + return; + + const char *header = "__info2_neural_network_file_format__"; + fwrite(header, sizeof(char), strlen(header), file); + fwrite(&nn.numberOfLayers, sizeof(int), 1, file); + + for (int i = 0; i < nn.numberOfLayers; i++) + { + erzeugeMatrix(file, &nn.layers[i].weights); + erzeugeMatrix(file, &nn.layers[i].biases); + } + + fclose(file); } void test_loadModelReturnsCorrectNumberOfLayers(void)