Итак, у меня проблемы с чтением из файла.Чтение неисправностей после окончания строки в C
Я хочу прочитать этот файл;
1
0 0 0 0 0 0 0 0
0 0 0 2 0 0 0 0
0 0 0 2 0 0 0 0
0 0 0 2 1 0 0 0
0 0 1 2 2 0 0 0
0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
Первый 1 - мой игрок, в то время как массив - это моя игровая площадка.
Так что я пытаюсь прочитать все это, используя этот код:
void initialize_file(Game *game)
{
int i,j;
FILE *file = fopen("save.sav", "r");
if(file==NULL)
{
printf("Can't read file.... \n");
}
else
{
game->player=(fgetc(file)-'0');
printf("Player %d loaded\n",jeu->player);
fgetc(file); //jump the two lines after player
fgetc(file);
for(i=0;i<8;i++)
{
for(j=0;j<8;j++)
{
Game->game[i][j] = (fgetc(file)-'0');
printf("value : %d \n",Game->game[i][j]);
fgetc(file);
}
fgetc(file);
}
}
}
Моя проблема заключается в том, что иногда я получаю значения вне моего массива, как -16 и -38, которые относятся друг к космосу и LF , Итак, мой вопрос: как я мог избежать бегства к этим -16 и -38?
Спасибо много, и я извиняюсь заранее за любые ошибки английских
Спасибо! Я добавил пробел перед \ n, и теперь он работает нормально. Я проверю свои возвращаемые значения, как сказал cnicutar. Благодаря ! –