From 6c0a32d32ee310a78a8c5651dca443d378bb1f32 Mon Sep 17 00:00:00 2001 From: ame Date: Thu, 28 Dec 2023 19:02:03 -0600 Subject: json parsing :p --- src/i_str.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/i_str.c (limited to 'src/i_str.c') diff --git a/src/i_str.c b/src/i_str.c new file mode 100644 index 0000000..804a33d --- /dev/null +++ b/src/i_str.c @@ -0,0 +1,35 @@ +#include "i_str.h" + +str* str_init(char* init){ + if(init == NULL){ + char cc = '\0'; + init = &cc; + } + + size_t len = strlen(init); + str* s = malloc(sizeof * s); + s->c = malloc(len + 1); + s->len = len ; + + memcpy(s->c, init, len + 1); + return s; +} + +void str_free(str* s){ + free(s->c); + return free(s); +} + +void str_push(str* s, char* insert){ + s->len += strlen(insert); + s->c = realloc(s->c, s->len + 5); + strcat(s->c, insert); +} + +void str_clear(str* s){ + memset(s->c, 0, s->len); + + s->len = 0; +} + + -- cgit v1.2.3