Salve,

sto facendo un programma per eliminare i doppioni,
per questo programma avevo già aperto una discussione
in precedenza http://forum.html.it/forum/showthread.php?s=&threadid=1494491] precedente discussione [/URL] , ma dopo le varie correzioni apportate
continua ad avere un comportamento anomalo ( non stampa sebbene la funzione sia corretta, non riconosce sempre bene i doppioni ) che
non riesco a spiegarmi in nessun modo, anche perchè le singole funzioni
funzionano.

grazie!!!

codice:
int main(void) {    

char* filename = malloc (sizeof (char*));    
char* filenout = malloc (sizeof (char*));        

char* first  = malloc( sizeof(char*));    
char* second = malloc( sizeof(char*));        

FILE* source;        

int flag = 1;        
int egu = 0;        
printf(" <-------- DUPLICATE CLEANER -------->\n\n\n");        

printf(" inserire il nome del file di input:");     
 scanf("%s", filename);        

filenout = namer(filename);        

printf("\n <-------- pulizia in corso -------->\n\n\n");        

source = fopen(filename, "r");        

flag = myget(source, first);   
    
 if( flag != 0 )       
   flag = myget(source, second);           

while( flag != 0 ){             

    egu = strcmp(first, second);              
    
    if( egu != 0) {           
       // diversi: si stampa first e si effettua la promozione di second           
       myprint( filenout, first);           
       strcpy(second, first);                      

       flag = myget(source, second);       }       
    else{          
       //  uguali: si cambia second           
      flag = myget(source, second);       }               
}       

fclose(source);    

printf("\n <-------- pulizia terminata!! -------->");   

system("PAUSE");   

return 0;  

}