Arduino 的字元轉換為整型

Ammar Ali 2023年10月12日
  1. 使用 Arduino 中的簡單方法將 char 轉換為 int
  2. 在 Arduino 中使用 toInt() 函式將 char 轉換為 int
  3. 使用 Arduino 中的 Serial.parseInt() 函式將 char 轉換為 int
Arduino 的字元轉換為整型

本教程將討論將 char 轉換為 int 的三種方法。第一種方法是簡單的方法,其中我們一次只能轉換一個字元。第二種方法是使用 toInt() 函式,第三種方法是使用 Serial.parseInt() 函式。

使用 Arduino 中的簡單方法將 char 轉換為 int

此方法只能將單個 char 轉換為 int。你需要從 char 中減去型別為 char 的零,以將其轉換為 int

void loop() {
  char someChar = '2';  // variable to store char
  int someInt = someChar - '0';
}

在上面的程式碼中,someChar 是型別為 char 的變數,用於儲存要轉換的 char。你可以將其值更改為給定的 char 變數。someIntint 型別的變數,用於儲存轉換結果。如果給定變數不是單個 char,則使用以下方法。

在 Arduino 中使用 toInt() 函式將 char 轉換為 int

在這種方法中,首先,將給定的 char 轉換為 string,然後使用 toInt() 函式將 string 轉換為 int

void loop() {
  char someChar = '3';
  String stringOne =
      String(someChar);  // converting a constant char into a String
  stringOne.toInt();
}

在上面的程式碼中,someChar 是型別為 char 的變數,用於儲存給定的 charstringOneString 型別的變數。如果 string 不是以有效數字開頭,則將無法進行轉換,並且將返回零。檢視連結以獲取更多資訊。

使用 Arduino 中的 Serial.parseInt() 函式將 char 轉換為 int

如果你正在從 Arduino 的串列埠讀取輸入並將想要將接收到的輸入轉換為 Int,則可以使用此方法。

void loop() {
  if (Serial.available() > 0) {
    int valA = Serial.parseInt();
  }
}

如果未讀取任何值或讀取了非數字,則解析將停止。如果在超時前未讀取任何有效輸入,則將返回 0。請參見 Serial.setTimeout() 設定序列超時。檢視此連結以獲取有關 Serial.parseInt() 函式的更多資訊。

作者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

相關文章 - Arduino Integer