[求助] 急!!!浮点数怎么转成字符串

求大神们帮忙   2016-12-15 17:39 楼主
如题,现在需要将一个浮点数转为字符串,在lcd1602显示出来,sprintf函数好像不能在单片机上面用啊,怎么解决这个问题啊???

回复评论 (7)

sprintf是可以用在单片机上,需要包含stdio.h就行了。重写fpuc函数还能实现printf函数的,具体操作可以参见网上的51单片机使用printf函数的资料。
亚里士缺德
点赞  2016-12-15 17:41
引用: 汤权 发表于 2016-12-15 17:41
sprintf是可以用在单片机上,需要包含stdio.h就行了。重写fpuc函数还能实现printf函数的,具体操作可以参见 ...

sprintf(&getdata,"%f",mul);是这样写的吗?mul是浮点数
然后把getdata显示出来的函数,但是显示的不是mul所表示的数啊,一直是一个固定数值0.49,为什么?
        bai=(getdata)/100;
        shi=(getdata)%100/10;
        ge=(getdata)%10;
        write_command(0xc0);
        write_date(table1[bai]);
       write_date(table1[10]);
        write_date(table1[shi]);
        write_date(table1[ge]);
       write_date(table1[11]);
        delay(100);
点赞  2016-12-15 18:41
有人看一下吗???
点赞  2016-12-15 19:09
顶一顶。。。
点赞  2016-12-15 19:38
引用: 汤权 发表于 2016-12-15 17:41
sprintf是可以用在单片机上,需要包含stdio.h就行了。重写fpuc函数还能实现printf函数的,具体操作可以参见 ...

您好,可以麻烦看一下吗???
点赞  2016-12-15 19:52
引用: 求大神们帮忙 发表于 2016-12-15 18:41
sprintf(&getdata,"%f",mul);是这样写的吗?mul是浮点数
然后把getdata显示出来的函数,但是显示的不是m ...

sprintf(string,"%f",num);
string是一个字符串,num是你要的数字,这样就能将浮点数num转成字符串string了,你那个写法是错的,后面还有对指针进行运算也是不对的。
亚里士缺德
点赞  2016-12-15 19:55
引用: 汤权 发表于 2016-12-15 19:55
sprintf(string,"%f",num);
string是一个字符串,num是你要的数字,这样就能将浮点数num转成字符串strin ...

好的,十分感谢!
点赞  2016-12-15 20:14
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复