得不到的永远在骚动被偏爱的都有恃无恐 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 hfss 组天线阵列报错:The A and B vectors must be parallel to the XY plane,如何解决?
  • ¥30 ansible连接设备报错
  • ¥60 pmsampsize包取值问题
  • ¥15 波形合成电路的设计学习
  • ¥15 unity脚本挂不上
  • ¥15 数学建模数学建模需要
  • ¥20 Java Sound Api 调用Mixer.getLine偶现Line unsupported错误。
  • ¥15 使用cuda加速opencv运算但是报错AttributeError: module 'cv2.cuda' has no attribute 'getCudaEnabledDeviceCount'
  • ¥15 java输入输出异常
  • ¥15 三子连珠对弈小游戏制作