stream-deploy/ZLM/3rdpart/media-server/test/BinaryDiff.cpp

38 lines
651 B
C++
Raw Normal View History

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
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;
}