MFC 编译链接错误:unresolved external symbol

编译MFC程序过程出现以下错误:

  • Error LNK2019 unresolved external symbol __imp___vsnprintf

解决方法:在Visual Studio工程选项,链接器附加依赖项里面添加legacy_stdio_definitions.lib即可.

  • LNK2001 unresolved external symbol __imp___iob

解决方法:在程序中重新定义_iob, 加上这段代码:extern"C" { FILE _iob[] = { *stdin, *stdout, *stderr }; }

 

产生以上两个问题的原因是程序中引用的链接库是用旧版的stdio库编译, 与新版的标准库定义不一样。 所以只好用代码重新定义函数指向。

猜你喜欢

转载自www.cnblogs.com/sql4me/p/12515274.html