Originariamente inviato da kekkino
ciao qualcuno potrebbe dirmi perchè quando arriva a stampare printf("il nome e%s\n",buffana->nome), continua a stamparlo all'infinito(nn si ferma più)e nn esce più dal ciclo..grazie
PS:è una funzione ke lavora su 2 file e deve confrontare 2 campi
...
Così sembra funzionare, prova anche tu :master:

codice:
void stampadipend()
{

	pfdip = fopen("dipendenti.txt", "rt");
	if( pfdip )
	{
		while( ! feof(pfdip) )
		{
			fread(buffdip, sizeof(struct dipend), 1, pfdip);
			pfana = fopen("anagrafe.txt", "rt");
			if( pfana )
			{
				fread(buffana, sizeof(struct anagr), 1, pfana);
				do
				{
					if(strcmp(buffdip->coddip, buffana->coddip) == 0)
					{
						printf("il nome e%s\n", buffana->nome);
						c=1;
					} 
					else
					{
						fread(buffana, sizeof(struct anagr), 1, pfana);
					}
					getch();
				}
				while( !feof(pfana) && c!=1);
				
				fclose(pfana);
			}
			else
				printf("ERRORE : Impossibile aprire il file \"anagrafe.txt\"\n");
		}
		fclose(pfdip);
	}
	else
		printf("ERRORE : Impossibile aprire il file \"dipendenti.txt\"\n");
		
	return;
}