#include <stdio.h>
#define n 1000000
unsigned char a[n],b[n];
FILE *fp1,*fp2;

main(int ac,char **av)
{
  int i,j1,j2,k,m;
  if(ac<3){ printf("\n\tdif file1 file2 [len]          **jiang\n\n"); exit(0); }
  k=n; if(ac>3)sscanf(av[3],"%d",&k); if(k>n)k=n;
  fp1=fopen(av[1],"rb"); if(fp1==0){ printf("%s not found!\n",av[1]); exit(0); }
  j1=fread(a,1,k,fp1); fclose(fp1);
  fp2=fopen(av[2],"rb"); if(fp2==0){ printf("%s not found!\n",av[2]); exit(0); }
  j2=fread(b,1,k,fp2); fclose(fp2);
  if(j1!=j2)printf("not same length: %d %d\n",j1,j2);
  m=j1; if(m>j2)m=j2; 
  for(i=0;i<m;i++)if(a[i]!=b[i])printf("%d %d: %x %x\n",i/256+1,i%256+1,a[i],b[i]);
  printf("ok!\n");
}
