在Cppcheck中检查代码时,出现错误“资源泄漏: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 ->
    };
};

最佳答案

只需确保在程序退出之前关闭所有打开的文件句柄,并且如果在堆上创建了ExclBdfile,也需要将其释放

关于c++ - 资源泄漏:fExclfile,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36588966/

10-11 22:42