我不熟悉 C 中的写入/读取等文件操作。是否有将下面的所有 printf() 写入我的输出文本文件的解决方案?执行后我无法将所有行写入我的文本文件。
for(i=0;i < n;i++)
if(i!=startnode)
{
outputFile = fopen(myOutputFile, "w");
printf("\nCOST of %d = %d", i, cost[i]);
printf("\nTRACE = %d", i);
j=i;
do
{
j=pred[j];
printf(" %d", j);
}
while(j!=startnode);
}
最佳答案
您可以使用 fprintf(FILE * stream, const char * format, ... )并将文件句柄传递给函数。
for(i=0;i < n;i++)
if(i!=startnode)
{
outputFile = fopen(myOutputFile, "a");
fprintf(outputFile,"\nCOST of %d = %d", i, cost[i]);
fprintf(outputFile,"\nTRACE = %d", i);
j=i;
do
{
j=pred[j];
fprintf(outputFile," %d", j);
}
while(j!=startnode);
fclose(outputFile);
}
根据您的意见编辑:
根据您的评论更新您打开文件的模式:fopen("asdas","a")
关于c - 如何将多行写入 C 中的输出文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36331116/