2011-02-03 50 views

回答

0

更具體的問題是什麼?

根據字節順序,您可以獲得0x4a54或0x544a。這正是您的價值的表現,因爲它在內存中。

+0

我的指針有一個字節的數據4A。如果我把它轉換爲無符號的短符號,它將獲取兩個字節的數據。那樣的話應該是'4A54'。我將它存儲在unsigned int中,並將值存儲在544A中。爲什麼不是4A54? – prathvi 2011-02-03 14:19:37

0

這是你的記憶,其中p = pSelectedData,PS =轉換爲短,品脫=強制轉換爲int(小端架構假設):

[ ][4A][54][00][00][ ] 
    ^^^^^
    p p+1 p+2 p+3 p+4 
    ps  ps+1 ps+2 
    pint   pint+1 

你可能想這樣做:

*(unsigned short*)pSelectedData = 0x4a; 
*(unsigned short*)(pSelectedData+1) = 0x54; 

哪會給你

[ ][4A][00][54][00][ ]