diff options
author | thing1 <thing1@seacrossedlovers.xyz> | 2024-07-09 15:40:55 +0100 |
---|---|---|
committer | thing1 <thing1@seacrossedlovers.xyz> | 2024-07-09 15:40:55 +0100 |
commit | b6cf209e65721c9b749124e6c5866b9359fc6583 (patch) | |
tree | 6426e7481f864b3a1d72c0bc21e4c89df6e9463e /comp/lucas-standen-NEA/code/tokenizer | |
parent | 3f23b452f8ab504a3337f88ddc714c3a660d2648 (diff) |
made alot work with vars
Diffstat (limited to 'comp/lucas-standen-NEA/code/tokenizer')
-rw-r--r-- | comp/lucas-standen-NEA/code/tokenizer/tokenizer.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/comp/lucas-standen-NEA/code/tokenizer/tokenizer.c b/comp/lucas-standen-NEA/code/tokenizer/tokenizer.c index c72270b..afd68fe 100644 --- a/comp/lucas-standen-NEA/code/tokenizer/tokenizer.c +++ b/comp/lucas-standen-NEA/code/tokenizer/tokenizer.c @@ -126,8 +126,11 @@ ast_node *tokenize(char *input){ expressFunction(function, node); - char *tok; - tok = strtok(strstr(exp, " ") + 1, " "); + char *tok, *saveptr, *expptr = exp; + + exp = strstr(exp, " "); + tok = strtok_r(exp, " ", &saveptr); + argCount = 0; depth = 0; do { @@ -143,10 +146,10 @@ ast_node *tokenize(char *input){ if (tok[0] == '(') depth++; if (tok[strlen(tok)-1] == ')') depth--; - tok = strtok(NULL, " "); + tok = strtok_r(NULL, " ", &saveptr); } while (tok != NULL); - free(exp); + free(expptr); return node; } |