33,311
社区成员
发帖
与我相关
我的任务
分享
//文本文件in.txt内容为:
//0xb0a1,0xb0a2,
//0xb0a3,0xb0a4
#include <stdio.h>
#include <locale.h>
#define MAXL 101
unsigned char a[MAXL];
int q,w,r,i;
FILE *f;
int main() {
setlocale(LC_ALL,"chs");
f=fopen("in.txt","r");
i=0;
while (1) {
r=fscanf(f,"0x%2x%2x",&q,&w);
if (2==r) {
a[i]=(unsigned char)q;
a[i+1]=(unsigned char)w;
i+=2;
if (i>=MAXL-1) break;
} else if (0==r) {
fgetc(f);
} else {// EOF==r || 1==r
break;
}
}
fclose(f);
a[i]=0;
printf("[%s]\n",a);
return 0;
}
//[啊阿埃挨]
//
#include <stdio.h>
#include <locale.h>
char s[]="0xb0a1";
unsigned char a[3];
int q,w;
int main() {
setlocale(LC_ALL,"chs");
sscanf(s,"0x%2x%2x",&q,&w);
a[0]=(unsigned char)q;
a[1]=(unsigned char)w;
a[2]=0;
printf("[%s]\n",a);
return 0;
}
//[啊]
//