Ciao a tutti,
Sto scrivendo un programma che prende i nomi scritti in 2 file(testo e nomi) e li salva in 2 array di stringhe ( nomi2[c], nomi[i]), li confronta e scrive le differenze tra i 2 file ( quali mancano in "testo" rispetto a quelli che ci sono in "nomi"). Purtroppo quando assegno ai nomi già presenti "" ( nomi[i]="") allora mi da questo errore "[Error] incompatible types when assigning to type 'char[80]' from type 'char *'"
Questo è il programma che ho fatto:
codice:
#include <stdio.h>
#include <string.h>
main()
{
char item[80];
int i=1;
int a, b, d;
char nomi[40][80];
int c=1;
char nomi2[40][80];
FILE *fp2;
fp2=fopen("nomi.txt", "r");
while(fscanf(fp2, "%s", nomi2[c])>0)
{
printf("%s\n", nomi2[c]);
c++;
}
fclose(fp2);
FILE *fp;
fp=fopen("testo.txt", "r");
printf("----------------Fine primo file------------------\n");
while(fscanf(fp, "%s", nomi[i])>0)
{
printf("%s\n", nomi[i]);
i++;
}
fclose(fp);
b=i;
a=i;
d=c;
while(b>0)
{
while(i>0)
{
if(strcmp (nomi[i],nomi2[c])!=0)
{
nomi[i]="";
nomi2[c]="";
i--;
}
b--;
i=a;
c--;
}
}
printf("mancano: \n");
while(d>0)
{
printf("%s\n", nomi2[d);
d--;
}
}