得到错误“fopen”:此函数或变量可能不安全。编译时

时间:2014-02-19 06:45:26

标签: c++ opencv fopen

我在编译时收到此错误:

'fopen': This function or variable may be unsafe. 
Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.

我是C ++新手并打开简历,因此请帮我摆脱这个错误。

由于

void _setDestination(const char* name)
{
    if (name==NULL) {
        stream = stdout;
    }
    else {
        stream = fopen(name,"w");
        if (stream == NULL) {
            stream = stdout;
        }
    }
}

2 个答案:

答案 0 :(得分:63)

这不是错误,它是来自Microsoft编译器的警告。

选择您的项目,然后在上下文菜单中单击“属性”。

在对话框中,选择Configuration Properties - > C/C++ - > Preprocessor

在PreprocessorDefinitions字段中添加;_CRT_SECURE_NO_WARNINGS以关闭这些警告。

答案 1 :(得分:8)

这是常见的警告。你可以通过

禁用它
#pragma warning(disable:4996)

或者只是像微软一样使用fopen_s。

但请务必在其他标题之前使用pragma。