Forse il problema è banale, ma mi sfugge qualcosa....
Ho un file da leggere con dati organizzati così:
codice:
1082420996 AthlBldg8AP1
1082421042 AthlBldg2AP3
1082421096 OFF
1082421101 AthlBldg2AP3
1082421196 OFF
e devo stampare su file i numeri corrrispondenti alle stringhe "OFF", il mio codice non riesce a leggere il test su: if(APa == "OFF")
Dov'è l'errore?
Il codice é:
codice:
#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;
}
Grazie