在計算機中,long型數佔4個字節,每個字節中存儲相應的二進制數據,我們做以下測試,就可看出高低位順序及每個字節存儲的內容,
char a[5];
long b = 1;
memcpy(a, (char *)&b, 4 );
我在winxp下vs08做實驗,得到long的高低位順序爲a[3],a[2],a[1],a[0],之後我們對於題目的問題就非常容易了。
例如將char* str中的字節轉化成long i;可用如下代碼:memcpy((void*)&i,str,4);
請記住long在計算機中只佔4個字節,所以拷貝內存最後的參數要寫4.