|
发表于 2017-3-8 18:04:50
|
显示全部楼层
你的兩個 "78", 意義上有很大的分別.
第一個 "78", 是一個字串的 "78", 這就是 human-readable 既 "78", 它背後佔用 2 個 byte, 分別是 0x37 及 0x38.
而第二個 78 (顯示為 "N"), 它只佔用 1個 byte, 數值是 10進 的 78, 亦即是 0x4e.
所謂 human-readable, 就是人類可以直接讀取的吧. 這裡假設了人類是以十進看數字, 所以用了 10進制把 78 顯示出來了. 但人類看的有時會比較混亂, 你可以試試:
Serial.print(78);
Serial.print("78");
看看兩者有什麼分別? 在電腦中, 78 跟 "78" 是完全不同的, 但用 human-readable 的表現時, 就變成一樣了. 所以, print 的結果, 主要用於"給人看"的地方. 電腦內部通訊, 如果不需要用人眼再檢查, 用 write 會比較好, 直接快捷.
其實 print 也不一定要顯示為 "78" 的, 你可以選用 HEX 去輸出, 就會是 "4E". |
|