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--;
}
}