Hello guys,
this is my first post, and I'm not so good with English so be gentle please.
Problem with my code is that every time when function importData prints string 'series' it's smaller for one character. For example:
AMSJETDZS
MEKDIEJF
SLEPDIE
NFELDE
and so on.
Can anyone tell me what's wrong?
Code:
typedef struct{ char series[9+1];
char origin[52+1];
char quality;
unsigned char eggNum;
}Eggs;
void importData(const char eggQual);
int main()
{
char eggQual;
do {
printf("Enter quality of eggs: ");
scanf("%c", &eggQual);
getchar();
if(eggQual<'A' || eggQual>'F')
printf("Wrong input.\n");
}while(eggQual<'A' || eggQual>'F');
importData(eggQual);
return 0;
}
void importData(const char eggQual)
{
Eggs j;
FILE *fin=fopen("Jaja.dat", "rb");
if(fin==NULL) exit(1);
fread(&j, sizeof(Eggs), 1, fin);
printf("%s\n", j.series);
fread(&j, sizeof(Eggs), 1, fin);
printf("%s\n", j.series);
fread(&j, sizeof(Eggs), 1, fin);
printf("%s\n", j.series);
fread(&j, sizeof(Eggs), 1, fin);
printf("%s\n", j.series);
fread(&j, sizeof(Eggs), 1, fin);
printf("%s\n", j.series);
fread(&j, sizeof(Eggs), 1, fin);
printf("%s\n", j.series);
fclose(fin);
}