#include #include #include #include int binnary_diff(const char* file1, const char* file2) { FILE* fp1 = fopen(file1, "rb"); FILE* fp2 = fopen(file2, "rb"); char packet1[4 * 1024]; char packet2[4 * 1024]; for(int i = 0; 1; i++) { int r1 = fread(packet1, 1, sizeof(packet1), fp1); int r2 = fread(packet2, 1, sizeof(packet2), fp2); int r = r1 < r2 ? r1 : r2; if (r < 1) break; // eof if (0 != memcmp(packet1, packet2, r)) { for (int j = 0; j < r; j++) { if (packet1[j] != packet2[j]) break; } } if(r1 != r2) break; } fclose(fp1); fclose(fp2); return 0; }