Dark_Angel 发表于 2013-4-7 18:42:30

如何将浮点转换为字符串

本帖最后由 Dark_Angel 于 2013-4-7 20:46 编辑

貌似我去查看,发现现有的库函数不支持?还是我没有找到?求教熟悉的高人们指点。
还有一个问题就是,如果我有一个浮点数12.3,我想让他转换成固定格式,比如12.3 -> +012.30,大概就是3.2f必须带符号这样的格式,求教怎么做~
谢谢~~

koko 发表于 2013-4-7 20:05:20

arduino的String类可以自动的将赋值给字符串的数字转换成字符串类型,可以使用concat(concatenate)或者"+"号:lol

Dark_Angel 发表于 2013-4-7 20:46:10

koko 发表于 2013-4-7 20:05 static/image/common/back.gif
arduino的String类可以自动的将赋值给字符串的数字转换成字符串类型,可以使用concat(concatenate)或者"+"号 ...

String貌似只能转化整形为字符,浮点的不可以……

春泥蛋炒饭 发表于 2013-4-8 03:08:07

参考这个函数,可以保持精度完美转换:char *double2char(char *dst, size_t siz, double x) {
static char xdigit = "0123456789ABCDEF";
char *saved = dst;
size_t i;
(void)siz; /* should use siz!!! */
for (i = 0; i < sizeof (double); i++) {
    /* assume CHAR_BIT (<limits.h>) is 8 */
    *dst++ = xdigit[(((unsigned char*)&x)) >> 4];
    *dst++ = xdigit[(((unsigned char*)&x)) & 15];
}
*dst = 0;
return saved;
}

fangtaonj 发表于 2013-7-10 19:16:29

春泥蛋炒饭 发表于 2013-4-8 03:08 static/image/common/back.gif
参考这个函数,可以保持精度完美转换:

大哥你好!正在找这个功能函数,我是新手,看不懂!请问你这个程序如何使用呢!
页: [1]
查看完整版本: 如何将浮点转换为字符串