新手,字符串比较问题
程序代码:
int n; char buf[10]; FILE *sf; sf=fopen("hrandsh.dump","rb"); fseek(sf,1,0); n=fread(buf,sizeof(char),2,sf);1、打开了一个二进制文件,取出两个字节,如果buf所指的值用16进制表示是9843,我想把buf和"9843"作比较,该怎么写呢?
2、如何把这个二进制里的所有数据用汉字、字母等等其他字符表示出来呢?
谢谢
void main(int argc,char**argv) { int n; char buf[3]; FILE *sf; int i; sf=fopen("hrandsh.dump","rb"); fseek(sf,5,0); n=fread(buf,sizeof(char),2,sf); for(i=0;i<n;i++) { printf("%02x",buf[i]); } fclose(sf); printf("\n%s\n",buf); }
if (strcmp(buf的16进制,"504f")==0)如何实现这个?
char buf[3]="\0"