我想的char array[100]
部分轉換爲int
C++轉換的陣列的一部分轉換成int
我的意思是我想僅第一2個陣列array[0]
和array[1]
我想讀陣列的十六進制到int
我的意思是,如果array[0]=T
相當於0xC2
我想該值是爲int
,而不是char
uint8_t z;
z=static_cast<uint8_t>(buf[0]);
但我想利用buf[1]
值太大,不僅buf[0]
z
將是2 buf[0]
和buf[1]
我想的char array[100]
部分轉換爲int
C++轉換的陣列的一部分轉換成int
我的意思是我想僅第一2個陣列array[0]
和array[1]
我想讀陣列的十六進制到int
我的意思是,如果array[0]=T
相當於0xC2
我想該值是爲int
,而不是char
uint8_t z;
z=static_cast<uint8_t>(buf[0]);
但我想利用buf[1]
值太大,不僅buf[0]
z
將是2 buf[0]
和buf[1]
硬盤的價值,以確保因您的問題ISN不太清楚。但是,也許這是你想要
uint16_t z = *reinterpret_cast<uint16_t*>(array);
什麼另一種可能是
uint16_t z = static_cast<uint8_t>(buf[0])*256 + static_cast<uint8_t>(buf[1]);
,另一個是
uint16_t z = static_cast<uint8_t>(buf[1])*256 + static_cast<uint8_t>(buf[0]);
嘗試所有這些,它們的區別僅在於什麼字節序他們使用。你應該看看。
讓我困惑的一件事是,你說你想要兩個字節,但是你的z
變量被聲明爲uint8_t
,它只是一個字節。我將其更改爲uint16_t
。
是的,1個字節只有1個BUF,謝謝這是我正在尋找偉大的:) – Nasr 2013-05-02 09:15:58
什麼編程語言? – pyrocumulus 2013-05-02 08:54:05
對不起C++我寫了它 – Nasr 2013-05-02 08:54:31