我正在使用Arduino。我想将一个String对象追加到一个字符数组。
String msg = "ddeeff"
char charArr[1600];
//assume charArr already contains some string
//How can I do something like this to append String to charArray?
charArr = charArr + msg;
答案 0 :(得分:2)
这适用于Arduino String对象。
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Untitled Document</title>
<script language ="javascript">
if (document.getElementById("hideifempty").innerHTML === "") {
document.getElementById("SampleDIV").style.display = "none";
}
</script>
</head>
<div id="SampleDIV">
<table id="TableTest">
<tbody>
<tr>
<td><b>Data:</b></td>
<td id="hideifempty"></td>
<td></td>
</tr>
<tr>
<td></td>
<td>If you can see this it didn't hide</td>
<td></td>
</tr>
</tbody>
</table>
</div>
<body>
</body>
</html>
使用String方法c_str()将字符串对象strcat( charArr, msg.c_str() );
转换为字符数组。然后,您可以使用strcat()追加2个字符数组。
正如Rakete1111所提到的,如果msg
不够大,那就是未定义的行为
答案 1 :(得分:1)
String
有operator+
个const char*
,它还有一个c_str()
函数,可将其转换为const char*
。
您可以将它们组合起来以获得所需的结果:
String temp = charrArr + msg; //Store result in a String
//Copy every character
std::strncpy(charArr, temp.c_str(), sizeof(charrArr));