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

Rispondi quotando