C语言将double转化成char数组存储

比如double =123456789123;我想得到char[]={1,2,3,,4,5,6,7,8,9,1,2,3};
2025-03-31 21:09:12
推荐回答(2个)
回答1:

double m;
unsinged char buf[32];
unsinged char len;

m = 123456789123;

len = 0;
while(1)
{
buf[len++] = m % 10;
m = m / 10;
if (m == 0)
{
break;
}
}
// 上面的代码得到一个变长的数组,buf[], 数字长度为len, 是反序
之后对buf 进行颠倒重排即可。重排结果是定长还是变长,不清楚,后面的代码自己写。

回答2:

利用余数求