From 8b8ec2a3829614a04ed205dae4e5fe80e50b5ca6 Mon Sep 17 00:00:00 2001 From: Sophia Weber Date: Sat, 27 Jan 2024 16:25:36 +0100 Subject: [PATCH] Extending formula extractor --- src/inputHandling.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/inputHandling.c b/src/inputHandling.c index 63cbfcc..4f081b3 100644 --- a/src/inputHandling.c +++ b/src/inputHandling.c @@ -48,8 +48,24 @@ op readFunction(char* data, int length){ void getnumbers(char* data, int length, calc_op* structure_ref){ //input sind: string, länge vom String, berechnungsstruct char tmp[length]; int i = 0; + char delimiter; + switch (structure_ref->funktionstyp) { + case opAdd: + delimiter = '+'; + break; + case opSub: + delimiter = '-'; + break; + case opDiv: + delimiter = '/'; + break; + case opMult: + delimiter = '*'; + break; + default: return; + } memcpy(tmp, data, length); //string kopiert - char *token = strtok(tmp, "+"); //An der Stelle von dem ersten Plus wird ein NULL (Stringende) gesetzt + char *token = strtok(tmp, &delimiter); //An der Stelle von dem ersten Plus wird ein NULL (Stringende) gesetzt while (token != NULL) { structure_ref->array[i]=atof(token); // String zu double konvertiert i++;