你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 13333|回复: 12

stm8中怎么使用sprintf将浮点型转变成字符串

[复制链接]

1

主题

2

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2014-4-11 15:51:25 | 显示全部楼层 |阅读模式
求大神指教》
回复

使用道具 举报

0

主题

32

回帖

0

蝴蝶豆

中级会员

最后登录
2019-8-26
发表于 2014-4-17 15:14:20 | 显示全部楼层

回复:stm8中怎么使用sprintf将浮点型转变成字符串

 如果你是用 ST Visual Develop, 在 Project Setting 的 Linker中,选中 Float 项就可以了。
回复 支持 1 反对 0

使用道具 举报

1

主题

2

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
 楼主| 发表于 2014-4-11 15:55:40 | 显示全部楼层

回复:stm8中怎么使用sprintf将浮点型转变成字符串

 
stm8说08r8
sprintf(table,"%f",bb);
转换不出来
回复 支持 反对

使用道具 举报

5

主题

212

回帖

0

蝴蝶豆

金牌会员

最后登录
1970-1-1
发表于 2014-4-14 09:28:50 | 显示全部楼层

RE:stm8中怎么使用sprintf将浮点型转变成字符串

sprintf 最常见的应用之一就是把整数打印到字符串中:
如:
//把整数123 打印成一个字符串保存在s 中:sprintf(s, "%d", 123); //产生"123"
可以指定宽度,不足的左边补空格:
sprintf(s, "%4d%4d", 123, 4567); //产生:" 1234567"
当然也可以左对齐:
sprintf(s, "%-4d%4d", 123, 4567); //产生:"123 4567"
也可以按照16 进制打印:
sprintf(s, "%8x", 4567); //小写16 进制,宽度占8 个位置,右对齐
sprintf(s, "%-8X", 4568); //大写16 进制,宽度占8 个位置,左对齐
浮点数的打印和格式控制是sprintf 的又一大常用功能,浮点数使用格式符”%f”控制,默认保  留小数点后6 位数字,比如:  sprintf(s, "%f", 3.1415926); //产生"3.141593"  但有时我们希望自己控制打印的宽度和小数位数,这时就应该使用:”%m.nf”格式,其中m 表  示打印的宽度,n 表示小数点后的位数。比如: sprintf(s, "%10.3f", 3.1415626); //产生:" 3.142" sprintf(s, "%-10.3f", 3.1415626); //产生:"3.142 "  sprintf(s, "%.3f", 3.1415626); //不指定总宽度,产生:"3.142"
浮点数的打印和格式控制是
sprintf 
的又一大常用功能,浮点数使用格式符”
%f
”控制,默
认保
 
留小数点后

位数字,比如:
 
sprintf(s, "%f", 3.1415926); //
产生
"3.141593" 
但有时我们希望自己控制打印的宽度和小数位数,这时就应该使用:

%m.nf
”格式,其中


 
示打印的宽度,

表示小数点后的位数。比如:
 
sprintf(s, "%10.3f", 3.1415626); //
产生:
" 3.142" 
sprintf(s, "%-10.3f", 3.1415626); //
产生:
"3.142 " 
sprintf(s, "%.3f", 3.1415626); //
不指定总宽度,产生:
"3.142"
回复 支持 反对

使用道具 举报

2

主题

295

回帖

0

蝴蝶豆

初级会员

最后登录
2018-4-6
发表于 2014-4-14 10:25:28 | 显示全部楼层

RE:stm8中怎么使用sprintf将浮点型转变成字符串

%f 不行? 不行就转化成两部分用%d显示就行了
回复 支持 反对

使用道具 举报

5

主题

108

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
发表于 2014-4-15 17:20:40 | 显示全部楼层

RE:stm8中怎么使用sprintf将浮点型转变成字符串

table应该是字符串型的,f%是可以的,类似于这样就可以:
char str[8];
sprintf(str,"%f",ad);
回复 支持 反对

使用道具 举报

1

主题

27

回帖

1

蝴蝶豆

初级会员

最后登录
2020-10-16
发表于 2014-4-16 17:49:36 | 显示全部楼层

RE:stm8中怎么使用sprintf将浮点型转变成字符串

你调用了stdio.h么?
回复 支持 反对

使用道具 举报

4

主题

224

回帖

0

蝴蝶豆

初级会员

最后登录
2020-7-4
发表于 2014-4-18 23:10:35 | 显示全部楼层

RE:stm8中怎么使用sprintf将浮点型转变成字符串

这是一个C语言的问题,与STM8 没有关系,你是需要操作字符串还是操作一个浮点型数, 如果理解没错是浮点型数字吧。
直接用
int a = 0, b = 0;
printf("%f, %d", a, b);
回复 支持 反对

使用道具 举报

22

主题

456

回帖

0

蝴蝶豆

金牌会员

最后登录
2020-7-20
发表于 2014-4-20 10:49:54 | 显示全部楼层

RE:stm8中怎么使用sprintf将浮点型转变成字符串

举个例子吧:
char BUFFER[];
f_num =2.2364
sprintf(BUFFER, "%f", f_num);
回复 支持 反对

使用道具 举报

5

主题

303

回帖

0

蝴蝶豆

金牌会员

最后登录
1970-1-1
发表于 2014-4-20 15:41:32 | 显示全部楼层

回复:stm8中怎么使用sprintf将浮点型转变成字符串

 这个纯C语言,晚上一搜索就一堆了吧
回复 支持 反对

使用道具 举报

关于 意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
st-img 微信公众号
st-img 手机版