zltl / sstr

An string library implement by C.

Home Page:https://zltl.github.io/sstr/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sstr

C/C++ CI

sstr_t are objects that represent sequences of characters. The standard C style string is a sequence of characters terminated by a null character, which is easy to cause buffer overflow. And it's annoying to pass pointer and length of string to every whare.

sstr_t supply a sstr_printf() function to format string.

The sequence of characters just like a string in C++, inside the sstr_t struct, it also has a null character at the end, so that we can use sstr_t as a C style string.

sstr_t contains a pointer to char sequence and its length, solves the security problems of standard C string. With functions bundle with sstr_t, you can easily manipulate the string just like standard C string, but in a safer way:

sstr_t stotal = sstr_new();
sstr_t s1 = sstr("hello");
sstr_t s2 = sstr("world");
sstr_append(stotal, s1);
sstr_append_of(stotal, " ", 1);
sstr_append(stotal, s2);
sstr_free(s1);
sstr_free(s2);

sstr_t result = sstr_printf("stotal=%S, c-str=%s, int=%d, long=%ld",
    stotal, stotal, 123, (long)456);

puts(sstr_cstr(result));
sstr_free(result);
sstr_free(stotal);

About

An string library implement by C.

https://zltl.github.io/sstr/

License:MIT License


Languages

Language:C 43.3%Language:CSS 39.4%Language:C++ 9.0%Language:HTML 5.5%Language:Makefile 2.8%