1
Cppcheckで自分のコードを確認しているときに、「リソースリーク:fExclfile」というエラーが表示されます。私のプログラムはコンパイルエラーやクラッシュを与えていません。この問題について私を助けてください。リソースリーク:fExclfile
FILE *fExclfile = NULL;
FILE *fExclBadfile = NULL;
if (ExclBadfile != NULL) {
fExclBadfile = fopen(ExclBadfile, "a");
if (fExclBadfile == NULL) {
fprintf(stderr, "%s Can't open the exclusion bad file \"%s\". Check permissions.\n", t_stamp(), ExclBadfile);
fflush(stderr);
return 0; // <- getting resource leak ->
};
};
あなたは必ずそれがfExclBadfile、のためのリソースリークではありませんしているプログラムが終了し、
ExclBdfile
ニーズがあまりに割り当てを解除するために前にそれがヒープ上に作成されます場合は、すべての開いているファイルハンドルを閉じていることを確認しましたあなたが戻ったときにあなたは閉じていませんか?あなたはfExclfileを使用していないので、その上のリソースリークは意味をなさない。 –'ExclBadfile'とは何ですか?そしてなぜそれをヒープに割り当てていますか?それがヒープ上のリソースであり、終了時にそれを破壊しない場合、それは潜在的なメモリリークです – Prab
@Matt Jordan残念です。これは「リソースリーク:fExclBadfile」です。 –