Я пытаюсь прочитать различные значения в текстовом файле:
вот мой файл:
4,3
30.0
20.0
1.0
Мой вывод работает для первой строки, я могу получить 4 и 3 отдельно одним вызовом fscanf. Но потом, когда я хочу снова вызвать fscanf, чтобы получить double, он возвращает 0, но я хочу 30.0!
Мой код здесь:
int* read_size(FILE* f) {
int* taille;
fscanf(f, "%d,%d", &taille[0], &taille[1]);
return taille;
}
int read_int(FILE* f) {
int i;
fscanf(f, "%d", &i);
return i;
}
double read_double(FILE* f) {
double d;
fscanf(f, "%lf", &d);
return d;
}
FILE* getFile() {
char* fileName = "1.conf";
FILE* f = fopen(fileName, "r");
return f;
}
int main( int argc, char *argv[]) {
FILE* f = getFile();
int* taille = read_size(f);
printf("maitre : taille[0] : %d, taille[1] : %d\n", taille[0], taille[1]);
double temperature = read_double(f);
printf("maitre : lecture de temperature %2f\n", temperature);
}