-2
下面的函數將產生在兩者之間'\x'
一個字符串,如何刪除最後一個字符
string GetHexEncode(string hexstring){
string swap = "\\x";
string h = "\\x";
int si = hexstring.length();
for (int i=0; i<hexstring.length(); i++)
{
if (i%2==0){
swap+=hexstring.at(i);
}
else
{
swap+=hexstring.at(i)+h;
}
}
return swap;
}
有時,程序的輸出如下:
\x45\x39\xD3\x5B\x4F\xEA\x6F\x3C\xBC\x1B\xA0\xF4\xE7\x41\xE5\x8
\x45\x39\xD3\x5B\x4F\xEA\x6F\x3C\xBC\x1B\xA0\xF4\xE7\x41\xE5\x
如果發生這種情況,有沒有什麼辦法可以將最後一部分改成:
\x45\x39\xD3\x5B\x4F\xEA\x6F\x3C\xBC\x1B\xA0\xF4\xE7\x41\xE5
是的:修正你的邏輯,所以它不會輸出錯誤的東西;-) - 嚴重的是,你真的需要提供導致錯誤輸出的輸入。 – John3136 2012-07-19 03:43:36