从具有指向char数组的指针的数组为String赋值

时间:2019-03-28 14:56:17

标签: c++ arduino arduino-ide

我试图在一个字符串(或char数组)中存储来自数组的值,该数组具有指向char数组的指针。 我需要这样做以便分别选择每个字符,以便将其存储在eeprom中。

_stringsArr包含指向char数组的指针。

Serial.printf("Point 4 %d, value %s \n", _stringsArr[x], *_stringsArr[x]);
String str(*_stringsArr[x]);
Serial.printf("Point 5 %d, value %s \n", str, str);

上一个代码的输出是

Point 4 1073479076, value abcdef 
Point 5 1073422164, value L��? 

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

https://en.cppreference.com/w/cpp/io/c/fprintf%s打印一个char*(c字符串),正如Johnny Mopp所提到的,您需要在c_str()上调用std::string访问底层的c字符串;