Wie man ESP32 ESP_LOGI(...)-Fehler behebt: expected ')' before 'msg'

Problem:

Sie haben Code in Ihrem Projekt wie

esp_log_fix.cpp
ESP_LOGI("MyTag", msg);

wobei msg ein const char* ist, aber das Projekt lässt sich nicht kompilieren mit einer Fehlermeldung wie

esp_logi_error.txt
src/main.cpp:280:26: error: expected ')' before 'msg'
  280 |         ESP_LOGI("MyTag", msg);

Lösung

Der format-Parameter kann keine beliebige Zeichenkette sein, sondern muss eine Zeichenkettenkonstante sein. Ersetzen Sie Ihren Code durch

esp_logi_fix.cpp
ESP_LOGI("MyTag", "%s", msg);

Check out similar posts by category: C/C++, ESP8266/ESP32