Problema con la stampa di un valore struct letto da file

di il
1 risposte

Problema con la stampa di un valore struct letto da file

Salve, sto cercando di fare un programma che deve creare una tabella, prendendo le dimensioni da file, avrei un problema con la stampa di un numero letto precedentemente da file e messo in un dato strutturato ,in C , quando vado a fare il printf del numero controllare, mi esce una serie di numeri diversi, e non capisco dove sto sbagliando:

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>



typedef struct
{
int righe;
int colonne;

}impostazioni;

impostazioni LeggereFile();
impostazioni ScrivereRighe();
impostazioni ScrivereColonne();


int main()
{int VettImp[5];
int Righe; //righedefault
int Colonne; //colonneDefault
impostazioni impD;

impD = LeggereFile(VettImp);

Righe = 0;
Colonne = 0;

Righe = LeggereRighe(impD);
Colonne = LeggereColonne(impD);

ScrivereRighe( impD, VettImp[0]);

printf("%d\n",Righe);
printf("%d\n",Colonne);

system("PAUSE");
return 0;
}





impostazioni LeggereFile(int *VettImp)
{FILE *ImpostazioniDefault;
impostazioni impD;

char i;
int j;

j = 0;
ImpostazioniDefault = fopen("C:\\Users\\LUKET&NICO\\Desktop\\file.txt", "r");
while(i!=EOF)
{
i = fgetc(ImpostazioniDefault);
VettImp[j] = i;
printf("%d", VettImp[j]);
j = j +1;
}
fclose(ImpostazioniDefault);

return impD;
}


impostazioni ScrivereRighe(impostazioni impD, int VettImp)
{
impD.righe = VettImp;

return impD;
}


impostazioni ScrivereColonne(impostazioni impD, int VettImp)
{
impD.colonne = VettImp;

return impD;
}


int LeggereRighe(impostazioni impD)
{
int Righe;

Righe = impD.righe;

return Righe;
}

int LeggereColonne(impostazioni impD)
{
int Colonne;

Colonne = impD.colonne;

return Colonne;
}

1 Risposte

  • Re: Problema con la stampa di un valore struct letto da file

    Usa i tag code per mostrare il cosice e indentalo eliminando le righe vuote... altrimenti è una gran confusione.

    Comunque ci sono un bel po' di errori ...

    La lettura dei valori dal file non si fa in quel moodo, nom con la fgetc e il vettore di int non c'entra nulla. Utilizza la fscanf e due variabili. Rivedi le basi.
Devi accedere o registrarti per scrivere nel forum
1 risposte