特定の条件が真の場合はファイルにデータを追加したい、そうでない場合は新しいファイルを開いてそのファイルに書き込みを続ける...これはループで続きます。
これは私がやっていることです:
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」条件内にあるため、コンパイルされません
。コードが乱雑になり、それが機能するかどうかもわかりません。
どんな助けでも大歓迎です!ありがとう!