【问题标题】:VC++: fprintf error in release modeVC++:发布模式下的 fprintf 错误
【发布时间】:2011-11-04 07:00:40
【问题描述】:

我在 Visual Studio 2010 工作,我有用 C 编写的代码。

如果我在“调试”模式下运行,代码将在没有任何错误或警告的情况下运行。

但是如果我在'Release'模式下运行同样的,就会出现错误和警告。

错误列表:

        warning C4013:'fprintf' undefined; assuming extern returning int
        error C2065: 'stdout': undeclared identifier

是什么原因?请帮忙

【问题讨论】:

标签: c visual-studio-2010 visual-c++


【解决方案1】:
warning C4013:'fprintf' undefined; assuming extern returning int

您似乎没有包含stdio.h。

【讨论】:

    【解决方案2】:

    Release 和 Debug 之间的配置似乎有所不同。 检查“整个程序优化”的值,它们可能在两种构建配置之间有所不同。


    反过来我也遇到了同样的问题:在发布模式下一切都很好,但在调试模式下,一些函数,如“ext”(FFTW 库)被报告为“未定义;假设 extern 返回 int”。

    失败的构建配置(在我的例子中是发布)在项目属性Configuration Properties > General 下将选项“整个程序优化”设置为No Whole Program Optimization。

    成功的构建配置将此设置为Use Link Time Code Generation。当我也在失败的目标中设置该选项时,一切正常。

    【讨论】:

      猜你喜欢
      • 2015-12-25
      • 2012-05-19
      • 2019-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多