From: acevest Date: Sat, 15 Aug 2026 00:42:14 +0000 (+0800) Subject: 修复输出格式转换的问题 X-Git-Url: http://repos.zhaoyanbai.com/?a=commitdiff_plain;h=7eede3b4688e37f48c0cb29598111f47bc8a8a4d;p=kernel.git 修复输出格式转换的问题 --- diff --git a/lib/string.c b/lib/string.c index c7ca91c..d1cc161 100644 --- a/lib/string.c +++ b/lib/string.c @@ -88,11 +88,12 @@ char* strcat(char* dest, const char* src) { // ; while (1) { *dest = *src; - dest++; - src++; if (*dest == 0) { break; } + + dest++; + src++; } return tmp; } diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 1129c0a..2150486 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -169,17 +169,19 @@ char* i64tou(char* s, uint64_t n) { char* itou(char* s, unsigned int n) { char* p = s; + char* h = s; do { *p++ = (n % 10) + '0'; n /= 10; } while (n); - *p-- = 0; + *p = 0; + p--; - while (s < p) { - swap_char(s, p); - s++; + while (h < p) { + swap_char(h, p); + h++; p--; } return s;