Как использовать fprintf для записи данных в файл

Я хочу записать данные из программы на C в файл, чтобы Excel мог прочитать файл, чтобы построить график данных. Но я не уверен в точном синтаксисе, который следует использовать для fprintf. Я объявил stdlib.h в самом верху моей программы. Я объявил "Файл *fp;" в основном, но я понимаю, что File и fp не объявлены. В чем может быть проблема?

** РЕДАКТИРОВАТЬ: моя программа компилируется и запускается, но теперь мой выходной файл не содержит никаких данных. Это то, что у меня есть в конце цикла while, который выполняет некоторые вычисления.

 fp = fopen( "out_file.txt", "w" ); // Open file for writing

 fprintf(fp, "x = %f, y = %f, vx = %f, vy = %f, time = %f, ", x,y,vx,vy,time);

3 ответа

Решение

Ваша логика должна выглядеть примерно так:

fp = fopen( "out_file.txt", "w" ); // Open file for writing

while ( some condition )
{

    ... some calculations

    fprintf(fp, "x = %f, y = %f, vx = %f, vy = %f, time = %f, ", x,y,vx,vy,time);
}

fclose(fp);

Тип файла stdio FILE (все в верхнем регистре).

#include <stdio.h>

должно быть достаточно, но будьте осторожны, потому что имя структуры - FILE (все в верхнем регистре), а не File. Наконец, не забудьте закрыть файл, вызывающий fclose()

Другие вопросы по тегам