반응형

client.publish("mytopic", "mypayload");

ESP8266보드에서 MQTT를 사용하기 위한 라이브러리인 pubsubclient에서 publish함수를 사용할때 위와 같이 사용하면 가능하다!

그러나 아래와 같이 사용하려면 에러가 난다!

String mypayload = "hello??";
client.publish("mytopic", mypayload); //에러!!

이건 publish함수의 함수원형이 String을 매개변수로 받지 않기 때문이다!

char 배열로 하면 가능한데 우리는 String을 사용하는게 여러모로 편리하다!

 

아두이노에서는 String클래스에 아래와 같은 내장함수를 제공하니 요렇게 사용하면 에러가 안난다!

String mypayload = "hello??";
client.publish("mytopic", mypayload.c_str()); //가능!!

c_str()함수에 대한 상세한 내용은 아래 공식홈피 참조~!

https://www.arduino.cc/reference/en/language/variables/data-types/string/functions/c_str/

반응형
Posted by 덕력킹
,