在不使用标准库utoa的情况下,我正在寻找utoa的源代码,因此可以为特定项目自定义它。我有无符号整数(32位),输出如0xFFFF_FFFF
我还在寻找二进制格式的无符号整数和半字到字符串的源代码。
尝试这个:
char *dec(unsigned x, char *s)
{
*--s = 0;
if (!x) *--s = '0';
for (; x; x/=10) *--s = '0'+x%10;
return s;
}
Run Code Online (Sandbox Code Playgroud)
您使用指向调用方提供的缓冲区末尾的指针来调用它,该函数将指针返回给字符串的开头。缓冲区的长度至少3*sizeof(int)+1应是安全的。
当然,这很容易适应其他基地。