70,023
社区成员




char b[4];
char s[]="12345678";
sscanf(s,"%2x%2x%2x%2x",b,b+1,b+2,b+3);
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char* argv[])
{
char *p="12345678";
//char *p="12005678";
char buff[16];
int i;
if ( strlen(p) & 1)
{
printf("The length of string must be a even number\n");
return 0;
}
for (i=0;i<strlen(p)/2;i++)
{
char t;
t= ((p[2*i]-'0') <<4) + p[2*i+1]-'0';
buff[i]=t;
}
buff[i]=0; //字符串结束标志
for (i=0;i<strlen(buff);i++)
printf("0x%02x ",buff[i]);
return 0;
}