fcloseで発生するエラーについて。
昨日「windowsプログラムのデバッグ」で投稿させて頂いた者です。
要点は「どのようなときにfcloseがエラーをおこすか」です。
Windowsプログラムでバグを探したところデバッグ用のログ出力ファイルを
fcloseする時にエラーがおこりプログラムがエラーを起こして終了している
ことがわかりました。
プログラムを実行させて一定操作を行うと、プログラムの最後に行われるfcloseでエラーが起こります。
プログラムを実行させてそのまま(×等で)終了させたときにはエラーが起こらずに正常な書き込みがされているので、
メッセージの処理等をしている間に変な処理を入れてしまているのだと思いますが、
実際にログファイルへの書き込みはfcloseの直前までできているのでなぜエラーが起こるのかよくわかりません。
if((fp=fopen("log.txt","w")==NULL)return -1;
とやっているのでfopenは成功していると思います。
fcloseがエラーとなるのはどのような原因が考えられるのでしょうか。
「意味がわからないので~を説明しろ」等でも構いませんのでご回答お願いいたします。
【環境】
VC6.0++ProffessionalEdition
windows2000
【その他】
-エラー文の内容-
"0x77fcc465"の命令が"0xfffdfffa"のメモリを参照しました。
メモリが"read"になることはできませんでした。
お礼
ご丁寧にご回答ありがとうございました。これから気をつけてコピー→貼り付けでゆきたいとおもいます。