Arduino 中的字符串到字节数组


getBytes() 函数有助于将字符串的内容复制到字节数组。语法是 −

string1.getBytes(buf,len)

其中,

  • string1 是你想将内容复制到字节数组中的字符串,

  • buf 是字节数组,

  • len 是要复制的内容的长度。

示例

以下示例说明如何使用此函数 −

byte buf[10];
void setup() {
   Serial.begin(9600);
   Serial.println();
   String s1 = "Hello World";
   s1.getBytes(buf, 5);
   for (int i = 0; i < 10; i++) {
      Serial.println(buf[i]);
   }
}
void loop() {
}

输出

串口监视器输出如下所示 −

如你所见,字符已被复制到字节数组中。72 对应于 ASCII 码中“H”的十进制值,101 对应于“e”的十进制值,依此类推。

请注意,虽然 len 的值为 5,但只有 4 个字符的字节被复制。这表示最后一个字节有意地保持为 0,以指示字符串终止。你可以尝试为 len 设置其他值,你将会得到类似的结果。最后一个字节将保持为 0。

更新于: 2021-07-24

8K+ 浏览量

开启你的事业生涯

完成课程即可获得认证

立即开始
广告