嵌入式C中无符号整数到字符串的源代码

ris*_*scy 2 c embedded

在不使用标准库utoa的情况下,我正在寻找utoa的源代码,因此可以为特定项目自定义它。我有无符号整数(32位),输出如0xFFFF_FFFF

我还在寻找二进制格式的无符号整数和半字到字符串的源代码。

R..*_*R.. 5

尝试这个:

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应是安全的。

当然,这很容易适应其他基地。