Forse il problema è banale, ma mi sfugge qualcosa....
Ho un file da leggere con dati organizzati così:
e devo stampare su file i numeri corrrispondenti alle stringhe "OFF", il mio codice non riesce a leggere il test su: if(APa == "OFF")codice:1082420996 AthlBldg8AP1 1082421042 AthlBldg2AP3 1082421096 OFF 1082421101 AthlBldg2AP3 1082421196 OFF
Dov'è l'errore?
Il codice é:
Graziecodice:#include <stdio.h> #include <stdlib.h> int main(int argc, char **args) { FILE *fpa, *fpbap; char in[260]; int i, r; long timestampa, timeona; char APa[15]; printf("Inserire il nome del file A: \n\n"); fgets(in, sizeof(in), stdin); in[strlen(in)-1]=0; fpa=fopen(in, "r"); if(fpa==NULL) {printf("Impossibile aprire il file \n\n"); return 1; } fpbap=fopen("UTENTEAP.txt", "a"); if(fpbap==NULL) { printf("Impossibile aprire il file di output UTENTEAP.\n\n"); return 2; } r=0; while(!feof(fpa)) { if(fscanf(fpa, "%ld", ×tampa) != EOF) if(fscanf(fpa, "%s", &APa) != EOF) fgetc(fpa); printf("\n Timestamp_a: %ld AP_a: %s \n", timestampa, APa); if(APa == "OFF") if(!feof(fpa))fprintf(fpbap, "%ld %s \n", timestampa, APa); } fclose(fpa); return 0; }

Rispondi quotando