在运行时将char数组转换为String?

时间:2014-08-31 21:53:10

标签: c++ c arrays string arduino

我很难将char数组复制到String。以下行正常工作:

String packetBufferString(packetBuffer);

但显然我只能这样做一次,因为packetBufferString必须是全局的,不能再次声明。问题是packetBuffer在运行时发生了变化,但我无法更新packetBufferString

使用

设置char数组
char packetBuffer[UDP_TX_PACKET_MAX_SIZE];

lg,couka

1 个答案:

答案 0 :(得分:0)

如果Stringstd::string,那么您可以写

std::string packetBufferString(packetBuffer);

//

packetBufferString.assign(packetBuffer);

std::string packetBufferString(packetBuffer);

//

packetBufferString  = packetBuffer;

前提是packetBuffer为零终止。否则你可以做同样的事情(即分配),但使用packetBuffer的初始和结束迭代器