1
我對C很陌生,所以有點困惑。將int16轉換爲字節數組
我想將int16轉換爲byte []數組。
我有一個int16像-200,我想將它轉換成一個byte [2]數組,如下面的例子。
Velocity = -200 = hex FF38 = [hex FF] [hex 38] = [255] [56]
我取值,並將其傳遞給串口像下面,但我需要通過INT16,並有一個函數將其轉換爲字節[]我。
Serial.print(255,BYTE);
Serial.print(56,BYTE);
我發現下面的代碼,但不能讓它的工作
Serial.print((velocity & 0xff00) >> 8, BYTE);
Serial.print(velocity & 0xff, BYTE);
任何建議?任何幫助,將不勝感激。
在你最後的例子中什麼都不起作用? – nos
你是什麼意思,你「不能得到它的工作」?您是否嘗試過使用printf或其他什麼來查看'(velocity&0xFF00)>> 8'的結果是什麼? – jtbandes
'Serial.print' ...嗯...你確定你的代碼是C,而你的編譯器是C? 'print'是結構類型對象的函數指針部分嗎?無論如何...爲什麼它不起作用?什麼是編譯器消息?發生什麼或沒有發生? *幫助我們幫助你*並確保語言 – pmg