如果某个条件为真,我想将数据附加到文件中,否则打开一个新文件并继续写入该文件......这会循环进行。
这就是我正在做的事情:
FILE* ptr
firstrun=1
***some code***
WHILE (condition)
{
if(!condition1 && !condition 2)
something
else if(condition1 || condition 2)
{
write data to file
if(firstrun)
FILE* ptr
fopen a file
firstrun=0
***some code***
if condition1
append data to previously opened file
if condition2
fclose
FILE* ptr
fopen another new file
}
}
整个代码似乎无法正常工作,但其他部分似乎确实正确。创建的第一个文件与答案匹配,但以下文件均不匹配。我还创建了更多的文件,不知道有多少数据被重复。
谁能告诉我我在这里所做的是否正确?我没有发布代码,因为它很大。
其他一些情况:
1. 如果我没有在顶部声明 FILE* ptr,它不会编译,因为唯一的其他声明在“if”条件内
2. 另一种方法是使用更多的“if”会使代码更混乱,我也不确定这是否可行。
任何帮助表示赞赏!谢谢!