<分区>
我正在编写一个函数,它将以 void 指针的形式传递一个 float 。我正在尝试做的是将该 float 转换为等效的字符串,以便我可以将该二进制数据保存在内存中。例如我的函数调用如下:
void * f(void * data);
如果用户通过我
float value = 3.14;
我想把它转换成如下所示的字符串:
"3.14"
我认为我应该使用的方法是首先确定 float 中值的数量:3.14 = 四个值。然后我将不得不遍历每个值并将其转换为一个字符。
我遇到的几个问题是 1:我不确定是否有可能确定与给定 float 关联的值的数量。 2:如何将每个值转换为其等效的字符串?
我遇到了 itoa 和 sprintf。但是,itoa 不是标准 C 库的一部分,我不确定 sprintf 是否会按照我的意愿执行。