"expected unqualified id before 'if'"是什么意思?



我不明白为什么这不起作用。我正在研究修复程序,他们说要在空循环中添加"如果"块。好吧,这总是在虚空循环中。你能告诉我含义和解决方法吗?另外,如果有更多错误,请通知我,以便我修复它。我的代码可能有点杂乱无章。 我的代码:

#include <LiquidCrystal.h>
LiquidCrystal lcd (7,8,9,10,11,12);
int pinDHT11 = 2;
SimpleDHT11 dht11;
void setup() {
Serial.begin(9600);
lcd.begin(16,2);
}
void loop() {
}
if (dht11.read(pinDHT11, &temperature, &humidity,data))
Serial.print("Read DHT11 failed");
return;
byte temperature = 0;
byte humidity = 0;
byte data[40] = {0};
if(dht11.read (pinDHT11, &temperature, &humidity, data)) 
return;
Serial.print("Read DHT11 failed");

Serial.println("=================================");
Serial.println("Sample DHT11...");
// read with raw sample data.
byte temperature = 0;
byte humidity = 0;
byte data[40] = {0};

}
Serial.print("Sample RAW Bits: ");
for (int i = 0; i < 40; i++) {
Serial.print((int)data[i]);
if (i > 0 && ((i + 1) % 4) == 0) {
Serial.print(' ');
}
}
Serial.println("");
Serial.print("Sample OK: ");
Serial.print((int)temperature); Serial.print("*C,");
Serial.print((int)humidity); Serial.println("%");
lcd.setCursor(0,0);
lcd.print((int)temperature);
lcd.setCursor(0,1);
lcd,print((int)humidity);
// DHT11 sampling rate is 1HZ.
delay(1000);

你的空循环是空的。

void loop() {
}

导致错误消息的原因是您可能没有函数之外的代码。函数外部唯一允许的是声明。

有一个没有匹配{}.

您还有两个无条件返回语句。

,而不是.

lcd,print((int)humidity);

最新更新