Robofun 機器人論壇
標題:
數值的進制轉換問題
[打印本頁]
作者:
pizg
時間:
2013-4-19 17:22
標題:
數值的進制轉換問題
本帖最後由 pizg 於 2013-4-19 19:39 編輯
我們可以用Serial.print將值以各種進制格式印出來, 如下
int value = 65;
// 以各種格式列印 65
Serial.println(value); // 印出 2 個 ASCII 字元 "65"
Serial.println(value, DEC); // 同上
Serial.println(value, HEX); // 印出 "41" 兩個 ASCII 字元
Serial.println(value, BIN); // 印出 "01000001" 八個 ASCII 字元
Serial.println(value, BYTE); // 把 65 當成一個 byte 印出
那麼要如何做才能把值以各種進制格式丟給變數?
作者:
babyfish0226
時間:
2013-4-19 20:43
回復
1#
pizg
int value = 65;
String stringOne = String(value, HEX);
Serial.println(stringOne);
複製代碼
作者:
pizg
時間:
2013-4-20 01:03
本帖最後由 pizg 於 2013-4-21 16:59 編輯
感謝babyfish0226老師的解答.
那麼如果不是 int value = 65;
換作是
char value[] = {'6' , '5'};
和
String value = "65";
呢?
作者:
babyfish0226
時間:
2013-4-23 23:23
char value[] = {'6' , '5'};和String value = "65"; 基本上是兩個char,應該拆開分別轉換。
char value[] = {'6' , '5'};
int newValue=value[0];
String stringOne = String(newValue, HEX);
Serial.println(stringOne);
複製代碼
作者:
pizg
時間:
2013-4-24 00:39
感謝babyfish0226老師的講解.
char value[] = {'6' , '5'}; 等同於
char value[] = "65";
我會先把char[]或String的格式轉成int,
也就是 65
然後再轉成各進制.
歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/)
Powered by Discuz! X3.2