我想做类似的事情:
char* a = (char*)msg[0];
char* b = (char*)msg[1];
char* c = a + "," + b;
msg
是int
的数组。
N.B。:这是Arduino C ++,而不是常规C ++。
答案 0 :(得分:2)
Arduino不使用std::string
,而是使用String
(请注意大写S并删除std::
)。在大多数情况下,它们的使用方式与std::string
相同。所以基本上你应该能够做到这一点:
String a("hello");
String b(" world");
c = a + b;
如果你想将一个整数转换为String
,它有一个构造函数可以做到这一点,例如:
String a = String(msg[0]);
String b = String(msg[1]);
答案 1 :(得分:1)
见strcat。 你似乎在编程C,而不是C ++。 这应该在最基本的教程中介绍。
答案 2 :(得分:1)
<强>解强>
所以这是我的解决方案,谢谢大家。
String a = String(msg[0]);
String b = String(msg[1]);
String c = a + "," + b;
char* d;
c.toCharArray(d,c.length());
mclient.publish("topic1/sensorAck",d);