69,373
社区成员
发帖
与我相关
我的任务
分享
sscanf ("86f7e437","%x",&a[0]);
sscanf ("faa5a7fc","%x",&a[1]);
sscanf ("e15d1ddc","%x",&a[2]);
sscanf ("b9eaeaea","%x",&a[3]);
sscanf ("377667b8","%x",&a[4]);
做个示范,至于怎么把字符串分成5份我就不做了。
#include<cstdio>
#include <cstdlib>
int main(void)
{
char s[] = "86f7e437faa5a7fce15d1ddcb9eaeaea377667b8";
unsigned int a[8]={0};
size_t i = 0, j = 0;
while (i < 8)
sscanf(s+j*5, "%5x", (a+i)),++i,++j;
int cnt =sizeof(s)/(5*sizeof(s[0]));
for (i=0; i<cnt; ++i)
{
printf("0x%x\n",*(a+i));
}
return 0;
}