65,186
社区成员




#include<cstdio>
typedef unsigned char BYTE;
int main()
{
char str[] = "abcdef1234";
BYTE arr[128] = {0};
// char* => BYTE
int i = 0, j = 0, cnt = 0;
while (*(str+i))
sscanf(str+i, "%2x", &arr[j]), i += 2, ++j;
cnt = j;
for (i = 0, j; j--; ++i)
printf("%x ",arr[i]);// ab cd ef 12 34
printf("\n");
// BYTE => char*
char res[128]={0};
for (i = 0; cnt--; ++i)
sprintf(res+i*2, "%x", arr[i]);
printf("%s\n",res);// abcdef1234
return 0;
}