str_append_uint32

This commit is contained in:
lixianjing 2023-07-03 18:14:25 +08:00
parent 784aac189a
commit 041c1df929
4 changed files with 30 additions and 0 deletions

View File

@ -2,6 +2,7 @@
2023/07/03
* 增加控制台应用类型(感谢兆坤提供补丁)
* 新增str\_append\_uint32(感谢陈聪提供补丁)
2023/06/30
* 增加函数conf\_ini\_load\_from\_buff/conf\_ini\_save\_to\_buff

View File

@ -176,6 +176,13 @@ ret_t str_append_int(str_t* str, int32_t value) {
return str_append(str, num);
}
ret_t str_append_uint32(str_t* str, uint32_t value) {
char num[32] = {0};
tk_snprintf(num, sizeof(num) - 1, "%u", value);
return str_append(str, num);
}
ret_t str_append_int64(str_t* str, int64_t value) {
char num[64] = {0};
tk_snprintf(num, sizeof(num) - 1, "%" PRId64, value);

View File

@ -300,6 +300,16 @@ ret_t str_append_n_chars(str_t* str, char c, uint32_t n);
*/
ret_t str_append_int(str_t* str, int32_t value);
/**
* @method str_append_uint32
* uint32整数
* @param {str_t*} str str对象
* @param {uint32_t} value
*
* @return {ret_t} RET_OK表示成功
*/
ret_t str_append_uint32(str_t* str, uint32_t value);
/**
* @method str_append_int64
* int64整数

View File

@ -552,6 +552,18 @@ TEST(Str, uint64) {
str_reset(&str);
}
TEST(Str, uint32) {
str_t str;
str_init(&str, 100);
ASSERT_EQ(str_append_uint32(&str, 123), RET_OK);
ASSERT_STREQ(str.str, "123");
str_reset(&str);
ASSERT_EQ(str_append_uint32(&str, 0xffffffff), RET_OK);
ASSERT_STREQ(str.str, "4294967295");
str_reset(&str);
}
TEST(Str, reverse) {
str_t str;
str_init(&str, 100);