У меня есть эта функция, которая сравнивает символы из 2 файлов и отображает найденные ошибки (строка + позиция).
void compareFiles(FILE *fp1, FILE *fp2)
{
char ch1 = getc(fp1);
char ch2 = getc(fp2);
int error = 0, pos = 0, line = 1;
while (ch1 != EOF && ch2 != EOF)
{
pos++;
if (ch1 == '\n' && ch2 == '\n')
{
line++;
pos = 0;
}
if (ch1 != ch2)
{
error++;
printf("Line Number : %d \tError"
" Position : %d \n", line, pos);
}
ch1 = getc(fp1);
ch2 = getc(fp2);
}
printf("Total Errors : %d\t", error);
Но я бы хотел взять каждый 1 КБ данных и сравнить его с другим из файла file2, потому что тогда я хочу посмотреть, сколько таких блоков одинаково. Как мне это сделать?