我一直在嘗試將保存在緩衝區中的十六進制數轉換爲unsigned int。然而,「0×00」,因爲我是從讀書一直給我的問題,本質問題(在縮小的版本)每個十六進制數的前面看起來像這樣:將十六進制緩衝區轉換爲unsigned int
char b[] = "0x0014A12";
std::stringstream ss;
unsigned int i;
ss << std::hex << b;
ss >> i;
cout << i << endl;
任何提示嗎?
注意:程序輸出一個高十進制數,等於CCCCCC十六進制數。
'焦炭B = {} 0x0014A12;' - 你有你的平臺上的32位字符? – Mat 2012-01-27 09:51:48
@Mat這是個例子中的拼寫錯誤,但是謝謝你指出。正如我在帖子中寫到的,它在實際程序中保存在緩衝區中。 – Andreas 2012-01-27 09:53:31
http://stackoverflow.com/a/1070499/1168156 – LihO 2012-01-27 09:54:40