#include int main(int argc, char**argv) { FILE *fp; unsigned char buffer[4]; unsigned int i,j; unsigned int doprint=1; unsigned int d=0; if ((fp=fopen(argv[1], "r"))) { for (i=0; i<10000000; i+=4) { if (fread(&buffer, 4, 1, fp)!=1) { printf("error writing at byte %d\n", i); break; } d=0; for(j=0;j<4; j++) { if (buffer[3-j]!=((i>>(j*8))&0xff)) { if (doprint) { printf("data differs at address %08x\n", i); } d=1; break; } } if (d) { doprint=0; } else { doprint=1; } } fclose(fp); } }