如何使用fprintf将数据写入文件

kac*_*ous 1 c

我想将数据从C程序写入文件,以便Excel可以读取文件以绘制数据图.但我不确定用于fprintf的确切语法.我在程序的最顶层声明了stdlib.h.我宣布"File*fp;" 在主要但我得到的文件和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);
Run Code Online (Sandbox Code Playgroud)

Rya*_*yan 7

你的逻辑应该是这样的:

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);
Run Code Online (Sandbox Code Playgroud)

  • 您必须稍微更改Excel的文件格式才能轻松阅读.CSV或制表符分隔可能是最简单的,例如`fprintf(fp,"%f\t%f\t\t%\ t\t\t%\ t\t\t\t%\ t\t \n",x,y,vx,vy,time); ` (2认同)