发表于:2006-04-27 20:20:00
楼主
各位大虾,救命啊!
我的目的是让用户输入一个浮点数,先将它保存在char数组中,输出到液晶屏上显示,然后可将char数组转换成浮点数或将浮点数转换成char数组,我用atof()和sprintf()函数,可不知为什么,在浮点数和字符数组中进行转换,就是没有小数部分,晕死了!
如下代码:
float p1;
char str[8]={'1','2','3','4','.','5','6','7'};
p1 = atof(str);
结果p1=0;将数组改成str[8]={'0','1','2','3','4','.','5','6'};
结果p1=1234;
或:
float p2=1234.567;
char str2[8]={0};
sprintf(str2,"%.3lf",p2);
结果p2=1234;
环境是uC/OS-II,ARM系统,不知是否还有更好的方法?等待大哥们的回信,不胜感激!