kk204159 發表於 2015-6-28 16:25:42

問:ISO C ++禁止指針和整數之間的比較。

看書寫了功能A 跟功能B,兩者各自獨立讓Arduino執行都沒問題
現在想要讓兩功能結合(A主功能,B副功能),卻因為兩功能都會用到數字鍵當指令,所以得分開運作
註解部分是後來加上去,想法是一開始先進入主功能A,當按'S'時進入副功能,按'E'後跳出副功能B回到主功能
編譯後回應:   ISO C++ forbids comparison between pointer and integer)
請問有其它解決辦法嗎?:L
部分程式碼如下:
void loop() {
measuredTemp = readTemp();
updataDisplay();
updateOutputs();

    if(Serial.available() > 0)    {   
       changTemp1 = Serial.parseFloat();
       setTemp = SetTemp();         
    char ch = Serial.read();                      //
    if(ch == "s" || "S"){                         //   <<問題反白在這一行>>
      Serial.print("(Logger: START)") ;
      if   (ch == 'r' ||ch == 'R'){
          sendBackdata() ;      
      }
         else if(ch == 'x' ||ch == 'X'){
          EEPROM.write(0, 0);
          lastReading = 0 ;
          Serial.print("Data is cleared");
      }
          else if(ch == 'c' ||ch == 'C'){
          mode = 'C' ;    //o C
          Serial.print("Mode set to deg C");
      }
          else if(ch == 'f' ||ch == 'F'){
          mode = 'F' ;   
          Serial.print("Mode set to deg F");
      }
          else if(ch > '0' &&ch <= '9'){
          setPeriod(ch) ;   
      }
          else if(ch == 'g' ||ch == 'G'){
          loggingOn = true ;   
          Serial.print("Logging started");
      }
          else if(ch == '?'){
          reportstatus();
      }
         else if(ch == 'e' || ch == 'E'){                //
         Serial.print("(Logger: END)") ;                //
         break;                                                 //
      }
}

lzx 發表於 2015-6-28 23:18:29

if(ch == "s" || "S"){                         //   <<問題反白在這一行>>
是不是應該這樣寫才對
if(ch == "s" || ch == "S"){

kk204159 發表於 2015-6-29 00:12:25

回復 2# lzx


   更改了但問題還是一樣

lzx 發表於 2015-6-29 08:19:58

最後少了一個
}
自己對對看吧
頁: [1]
查看完整版本: 問:ISO C ++禁止指針和整數之間的比較。