tb_char_t const* tb_string_chrncat(tb_string_ref_t string, tb_char_t c, tb_size_t n) { // check tb_assert_and_check_return_val(string, tb_null); // done tb_char_t* p = (tb_char_t*)tb_buffer_memnsetp(string, tb_string_size(string), c, n + 1); if (p) p[tb_string_size(string)] = '\0'; return p; }
tb_byte_t* tb_buffer_memnset(tb_buffer_t* buffer, tb_byte_t b, tb_size_t n) { return tb_buffer_memnsetp(buffer, 0, b, n); }
tb_byte_t* tb_buffer_memsetp(tb_buffer_t* buffer, tb_size_t p, tb_byte_t b) { return tb_buffer_memnsetp(buffer, p, b, tb_buffer_size(buffer)); }
tb_byte_t* tb_buffer_memset(tb_buffer_ref_t buffer, tb_byte_t b) { return tb_buffer_memnsetp(buffer, 0, b, tb_buffer_size(buffer)); }