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+ 瀏覽量

開啟你的事業生涯

完成課程即可獲得認證

立即開始
廣告