当前位置: 代码迷 >> C语言 >> [求助]如何将浮点数转换为字符型
  详细解决方案

[求助]如何将浮点数转换为字符型

热度:410   发布时间:2007-05-19 09:58:15.0
[求助]如何将浮点数转换为字符型

急急急!!!!!
如何将浮点数转换为字符型
谢谢!!!~~~~~~~~~
搜索更多相关的解决方案: 字符型  点数  

----------------解决方案--------------------------------------------------------
float x,y;
char string[20],*p=string;
long l,l2;
l=(long)x;
l2=(x-l)*pow(10,7);
ltoa(l,p,10);
n=strlen(string);
p=p+n;
*p++='.';
ltoa(l,p,10);
不知道这样行不行.
----------------解决方案--------------------------------------------------------
#include<stdio.h>

int main()
{
float num=123.456;
char str[8];

sprintf(str,"%.3f",num); /* 有限制,格式要确定 比如%.3f */
printf("%s",str);
}
----------------解决方案--------------------------------------------------------

ftoa
用法类似itoa


----------------解决方案--------------------------------------------------------
楼主是不是要把浮点型转化为字符串型数据?
如果不是可以用 强制类型转化.
----------------解决方案--------------------------------------------------------

原先发的那个代码有点问题,要编写者自己判断位数,现在可以将%f用%g替换,不过float型只能有六位有效数字,这跟它的精度有关吧.

#include<stdio.h>

int main()
{
float num=123.456;
char str[8];

sprintf(str,"%g",num); /* 注意是%g */
printf("%s",str);
}


----------------解决方案--------------------------------------------------------
  相关解决方案