极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11398|回复: 4

如何将浮点转换为字符串

[复制链接]
发表于 2013-4-7 18:42:30 | 显示全部楼层 |阅读模式
本帖最后由 Dark_Angel 于 2013-4-7 20:46 编辑

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

使用道具 举报

发表于 2013-4-7 20:05:20 | 显示全部楼层
arduino的String类可以自动的将赋值给字符串的数字转换成字符串类型,可以使用concat(concatenate)或者"+"号
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-4-7 20:46:10 | 显示全部楼层
koko 发表于 2013-4-7 20:05
arduino的String类可以自动的将赋值给字符串的数字转换成字符串类型,可以使用concat(concatenate)或者"+"号 ...

String貌似只能转化整形为字符,浮点的不可以……
回复 支持 反对

使用道具 举报

发表于 2013-4-8 03:08:07 | 显示全部楼层
参考这个函数,可以保持精度完美转换:
  1. char *double2char(char *dst, size_t siz, double x) {
  2.   static char xdigit[16] = "0123456789ABCDEF";
  3.   char *saved = dst;
  4.   size_t i;
  5.   (void)siz; /* should use siz!!! */
  6.   for (i = 0; i < sizeof (double); i++) {
  7.     /* assume CHAR_BIT (<limits.h>) is 8 */
  8.     *dst++ = xdigit[(((unsigned char*)&x)[i]) >> 4];
  9.     *dst++ = xdigit[(((unsigned char*)&x)[i]) & 15];
  10.   }
  11.   *dst = 0;
  12.   return saved;
  13. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2013-7-10 19:16:29 | 显示全部楼层
春泥蛋炒饭 发表于 2013-4-8 03:08
参考这个函数,可以保持精度完美转换:

大哥你好!正在找这个功能函数,我是新手,看不懂!请问你这个程序如何使用呢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-5 09:42 , Processed in 0.036037 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表