【问题标题】:convert double type into string type in arduino sketch在arduino草图中将double类型转换为字符串类型
【发布时间】:2013-11-08 19:39:03
【问题描述】:
double ambientTemp=44.00;
String yourdatacolumn="yourdata=";
String yourdata; 
double yourarduinodata=ambientTemp; 
yourdata = yourdatacolumn + yourarduinodata; 

//我希望输出是字符串。但由于您的arduinodata 是双重类型。无法将其转换为字符串。然后,我把(String)放在你的arduinodata前面,还是不让我跑过去。

任何人都知道如何在 arduino 草图中将双精度类型转换为字符串类型;

【问题讨论】:

    标签: string arduino double


    【解决方案1】:

    另一种将双精度转换为字符串的方法:

        char TempString[10];  //  Hold The Convert Data
    
        dtostrf(ambientTemp,2,2,TempString);
     // dtostrf( [doubleVar] , [sizeBeforePoint] , [sizeAfterPoint] , [WhereToStoreIt] )
        YourArduinoData = String(TempString);  // cast it to string from char 
    

    【讨论】:

      【解决方案2】:

      使用 - String(val, decimalPlaces)

      例子,

      double a = 10.2010;
      
      String SerialData="";
      
      SerialData = String(a,4);
      
      Serial.println(SerialData);
      

      【讨论】:

        【解决方案3】:

        这样的事情可能会奏效:

        String double2string(double n, int ndec) {
            String r = "";
        
            int v = n;
            r += v;     // whole number part
            r += '.';   // decimal point
            int i;
            for (i=0;i<ndec;i++) {
                // iterate through each decimal digit for 0..ndec 
                n -= v;
                n *= 10; 
                v = n;
                r += v;
            }
        
            return r;
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-10-20
          • 1970-01-01
          • 1970-01-01
          • 2020-11-22
          • 2019-02-18
          • 2012-05-09
          • 2014-03-15
          相关资源
          最近更新 更多