讓我們假設我有一個字符串str它由缺省字符以十六進制(0-9,AF):轉換爲unsigned char []
string str="1234567890abcdef";
我也有一個空數組正的長度(N是已知的):
unsigned char arr[n]
我想要做的是填補我陣列ARR與STR值,而是以特定的方式如下所示:
unsigned char arr[8] = {0x12U, 0x34U, 0x56U, 0x78U, 0x90U, 0xabU, 0xcdU, 0xefU};
由於它是字符串str被分成更小的十六進制字符。我怎樣才能實現它?分離的算法很簡單,但我不知道如何將字符串更改爲無符號字符,以及如何在字符的開始處添加0x和字符的末尾。
你試圖在這裏達到什麼樣的最終結果?這是一個庫的接口嗎? – 2011-03-25 16:06:09
我對你想「在開始時加上0x」的陳述感到困惑。你是否試圖在運行時從'str'填充'arr []',或者在源代碼中將一個表單轉換爲另一個表單? – Andy 2011-03-25 16:07:04
可能的重複[從std :: string存儲十六進制值,並且反之亦然?](http://stackoverflow.com/questions/4843369/storing-hexadecimal-values-from-a-stdstring- in-a-stdvector-and-vise-versa) – 2011-03-25 16:09:13