diff options
Diffstat (limited to 'example/string.c')
-rw-r--r-- | example/string.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/example/string.c b/example/string.c new file mode 100644 index 0000000..fbd0943 --- /dev/null +++ b/example/string.c @@ -0,0 +1,34 @@ +#include "prb.h" + +i32 main(void) +{ + printf("Strings:\n"); + + arena_t str_arena = alloc_arena(0); + str8_list_t strlist = {0}; + str8_list_push(&str_arena, &strlist, 0, str8lit("first ")); + str8_list_push(&str_arena, &strlist, 0, str8lit("second ")); + str8_list_push(&str_arena, &strlist, 0, str8lit("third\n")); + str8_print(str8lit("strlist: ")); + str8_list_print(&strlist); + + str8_t fstr = str8_pushf(&str_arena, "Formatted string: %d\n", 69); + str8_print(fstr); + + memzero_struct(&strlist); + str8_list_pushf(&str_arena, &strlist, 0, "first %d -> ", 34); + str8_list_pushf(&str_arena, &strlist, 0, "second: %d -> ", 35); + str8_list_pushf(&str_arena, &strlist, 0, "sum: %d\n", 34+35); + str8_list_pushf(&str_arena, &strlist, 1, "%s", "To the front -> "); + + str8_print(str8lit("Formatted string list:\n")); + str8_list_print(&strlist); + + str8_t catstr = str8_list_join(&str_arena, &strlist); + str8_print(str8lit("Concatenated string list:\n")); + str8_print(catstr); + + release_arena(&str_arena); + + return(0); +} |