码迷,mamicode.com
首页 > 其他好文 > 详细

Arduino中数据类型转换 float/double转换为char 亲测好使,dtostrf()函数

时间:2016-11-20 19:42:05      阅读:778      评论:0      收藏:0      [点我收藏+]

标签:plain   串口   整数   color   double   blog   输出   name   sign   

       如何轻松玩转Arduino单片机,当我在进行数据转换的时候,遇到了问题,尝试了C语言和C++中的好多函数,都没有达到将float型数据转换为char型的目的。苦苦查阅资料后,终于找到了一个大神级函数!!!dtostrf(),可以轻松实现数据类型from   float   to  char .            get it


格式如下:

char* dtostrf(double _val,signed char _width, unsigned char prec, char* _s)

参数说明:

_val:要转换的float或者double值。

_width:转换后整数部分长度。

_prec:转换后小数部分长度。

_s:保存到该char数组中。


示例如下:

float  f=3.1415;
char   c[];
dtostrf(f,1,2,c);
Serial.println(c);

此时从Arduino自带串口监视器中将输出3.14,即成功实现了数据类型转换。

数据转换之后,我们可以对字符串进行一个拼接。如下,将实现字符串的拼接

float  f=3.1415;
char   c[];
dtostrf(f,1,2,c);
Serial.println(c);
//定义一个字符串
char s[]="///sensor1///ly///sensor1///PM2.5///100.70///";
//进行字符串拼接操作
strcat(s,c);
Serial.println(s);
此时将在Arduino自带串口监视器中将输出///sensor1///ly///sensor1///PM2.5///100.70///3.14,即成功实现了字符串的拼接。
特别说明:Arduino中可以直接调用C语言中的strcat()函数来实现对字符串的拼接。



Arduino中数据类型转换 float/double转换为char 亲测好使,dtostrf()函数

标签:plain   串口   整数   color   double   blog   输出   name   sign   

原文地址:http://blog.csdn.net/qq_25827845/article/details/50717522

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!