十六進位制字串(CString或char[]) 和 BYTE,char陣列 相互轉化
阿新 • • 發佈:2019-02-11
CString CProgramInfoToolDlg::xByte2String(BYTE* bytes,int nArrSize)
{
static char hexDigits[] = { '0 ', '1 ', '2 ', '3 ', '4 ', '5 ', '6 ', '7 ', '8 ', '9 ', 'A ', 'B ', 'C ', 'D ', 'E ', 'F '};
char *chars = new char[nArrSize * 2+1];
for (int i = 0; i < nArrSize; i++)
{
int b = bytes[i];
chars[i * 2] = hexDigits[b > > 4];
chars[i * 2 + 1] = hexDigits[b & 0xF];
}
chars[nArrSize * 2] = '/0 ';
CString str = chars;
delete chars;
return str;
}
{
static char hexDigits[] = { '0 ', '1 ', '2 ', '3 ', '4 ', '5 ', '6 ', '7 ', '8 ', '9 ', 'A ', 'B ', 'C ', 'D ', 'E ', 'F '};
char *chars = new char[nArrSize * 2+1];
for (int i = 0; i < nArrSize; i++)
{
int b = bytes[i];
chars[i * 2] = hexDigits[b > > 4];
chars[i * 2 + 1] = hexDigits[b & 0xF];
}
chars[nArrSize * 2] = '/0 ';
CString str = chars;
delete chars;
return str;
}