zoukankan      html  css  js  c++  java
  • Arduino中数据类型转换 float/double转换为char 亲测好使,dtostrf()函数

           如何轻松玩转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值。

    _转换后整数部分长度。

    _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()函数来实现对字符串的拼接。



  • 相关阅读:
    Linux系统的关机、重启、睡眠
    Java 读写Properties配置文件
    Java识别操作系统
    Java DES 加解密("DES/CBC/PKCS5Padding")
    Java获取本机IP
    编写SHELL脚本--编写简单脚本
    配置yum软件仓库(redhat 7.0)
    简单的redis测试
    Seaslog安装和参数配置
    mac使用phpize进行安装的时候碰到的问题
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6467345.html
Copyright © 2011-2022 走看看