linux下没有itoa函数,sprintf又不能转换成二进制,那么如何写一个小函数,把十进制转换成二进制?

然后作为字符串打印出来?
2024-11-29 19:20:10
推荐回答(1个)
回答1:

连续除以2,让余数倒排即可,我写了个输出成int的,只不过这个int是二进制而已,你可以参考

int to2(int n)
{
    int r=0;
    int shang,yushu;
    shang=n;
    while(shang!=0)
    {
        yushu=shang%2;
        r=r*10+yushu;
        shang=shang/2;
    }
    return r;
}