在Arduino中将字符串连接在一起

时间:2014-07-29 09:47:59

标签: c++ arduino

我想做类似的事情:

char* a = (char*)msg[0];
char* b = (char*)msg[1];
char* c = a + "," + b;

msgint的数组。

N.B。:这是Arduino C ++,而不是常规C ++。

3 个答案:

答案 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]);

您可以找到更多示例herehere

答案 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);