得不到的永远在骚动被偏爱的都有恃无恐 2021-07-04 23:10 采纳率: 50%
浏览 147
已采纳

esp8266上传数据到云平台

esp8266上传到云平台数据的函数是字符串型,需要上传的数据是float型,这两者之间如何转化

  • 写回答

2条回答 默认 最新

  • dceacho 2021-07-05 19:18
    关注

    自己写吧,定好小数位数限制和整数位数限制后很好写的

    #define MAX_F        4
    #define MAX_INT        6
    
    char retbuf[MAX_F+MAX_INT+3];
    
    char* ftostr(float f)
    {
          bit s=false;
          
          long tmp32=(long)(f*10000);
    
          if(tmp32<0)
          {
            s=true;
            tmp32=-tmp32;
            retbuf[0]='-';
          }
          else
          {
            retbuf[0]=' ';
          }
        retbuf[1]=tmp32/1000000000%10+'0';
        retbuf[2]=tmp32/100000000%10+'0';
        retbuf[3]=tmp32/10000000%10+'0';
        retbuf[4]=tmp32/1000000%10+'0';
        retbuf[5]=tmp32/100000%10+'0';
        retbuf[6]=tmp32/10000%10+'0';
        retbuf[7]='.';
        retbuf[8]=tmp32/1000%10+'0';
        retbuf[9]=tmp32/100%10+'0';
        retbuf[10]=tmp32/10%10+'0';
        retbuf[11]=tmp32/1%10+'0';
        retbuf[12]='\0';
        return retbuf;
    }
    

    没有处理无效零, 授人以渔, 你自己研究吧

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 latex投稿显示click download
  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?