我正在尝试将我的结果写入文本文件,因此我可以使用MATLAB进行绘图等等。代码没有问题(我尝试用fprint显示结果),但现在我正在尝试保存如果将文件名重新设置为文本文件,则会创建文件名amiir.txt,但该文件名为空。即使我使用相对目录,文本文件也将为空。我试图创建一个文本文件,然后再次运行代码,但它是空的!怎么了?我正在使用mac os,我尝试了XCode和CodeLight!谢谢。 P.S。:这是我的一段代码:
FILE * fp; /* open the file for writing*/
fp = fopen ("/Users/amirsmacbookpro/Documents/Heat_Transfer/Project/Debug/amiir.txt","w+");
anf经过一些计算:
for(i=0;i<Total_Nodes;i++)//Error
{
if(Temps_Diff[i]>Calculated_Error) Calculated_Error=Temps_Diff[i];
}
printf(fp,"\n%.4f",Calculated_Error);
// printf(fp,"\n\nROW\tColumn\tTemp\n");
for(i=0;i<=a/l;i++)//Showing results
{
for(j=0;j<=i;j++)
{
printf(fp,"%d\t%d\t%.6f\n",i,j,Temperatures[i][j]);
}
}
}
fclose(fp);
你需要使用fprintf
而不是printf
。 printf
函数只是打印到控制台,而不是文件。
请注意,您的编译器应该抱怨(可能有警告?)关于您使用printf
。 printf
函数不将函数指针作为第一个参数。您可能需要调高编译器警告级别才能看到此警告。