Boa tarde pessoal, será que vocês podem me dar uma ajuda por favor?
Eu estou fazendo em C um programa que calcula os hashs dos arquivos que estão na mesma pasta que o programa e compara um a um para ver se existem arquivos iguais mas com nomes diferentes, então eu calculei o hash e coloquei tudo dentro de um arquivo, porém estou tendo dificuldade para fazer a comparação, mais exatamente estou tendo problemas com o trecho de código abaixo:
//comparando hash
int i, j = 0;
while((fscanf(fp, "%s %s", hashArquivo, nomeArquivo)) != EOF)
{
printf("i = %d e hashArquivo = %s\n", i, hashArquivo);
getchar();
while((fscanf(fp, "%s %s", hashArquivoCmp, nomeArquivoCmp)) != EOF)
{
printf("j = %d e hashArquivoCmp = %s\n", i, hashArquivoCmp);
getchar();
if (i != j)
{
if ((strcmp(hashArquivo, hashArquivoCmp)) == 0)
{
printf("%s %s\n", hashArquivo, hashArquivoCmp);
puts("arquivos iguais");
getchar();
}
}
j++;
}
}
Quando eu executo, até a parte em que ele mostra o número de linhas e exibe a mensagem esta tudo certo, porém ao pressionar enter, o programa ao invés de seguir em frente, interrompe a função e retorna ao menu principal, alguém consegue entender onde foi que eu errei?