0
我有下面的代碼來讀取光傳感器,轉換爲勒克斯,concat與「勒克斯」。並將其發送給我的SmartThings雲。 最後我想發送到SmartThings值格式化像lux.110
我有麻煩連接字符串與int
void checkLux() {
float logLux = analogRead(lightPIN) * logRange/rawRange;
int luxValue = pow(10, logLux);
String statusUpdate = "lux." + luxValue;
Serial.println(statusUpdate);
smartthing.send(statusUpdate);
delay(1000);
}
這上面的代碼中吐出的字符到串口監視器和犯規打印勒克斯一些奇怪的組合。或luxvalue。 如果我添加這一行String luxString = "lux.";
並修改下面的行,這一切都很好。任何想法爲什麼我需要單獨聲明這個字符串。根據文件或者應該工作正常。
此外,如果在此代碼塊內對變量節省有任何建議。我還沒有那麼棒。
您可以使用concat函數。 'statusUpdate.concat(luxValue)'不能解決你的問題嗎? – ahaltindis 2014-10-26 19:57:37
@ahaltindis這是一個答案,把它放在答案部分。 – 2014-10-26 23:18:50