Visual Studio 2017

操作系统:win 10

 

问题:

编译的时候可能会遇到 ERROR LNK2019:无法解析的外部的符号 __vsnwprintf_s,或者是_sscanf,_sscanf_s等等一系列形如这样的函数

 

疑问:

这些函数明明就是系统自带的函数,但是为什么在VS2015中编译不过,但是在低版本中编译的过呢?

 

解决方案:

在工程属性中,打开“链接器”,在“附加依赖项”中添加以下代码即可。

legacy_stdio_definitions.lib 

或者是在报错的.c文件中加#parameter(lib,"legacy_stdio_definitions.lib ")

 

 

 

原因:

vs2015默认编译时将许多标准库采用内联方式处理,因而没有可以链接的标准库文件,所以要专门添加标准库文件来链接标准库中的函数

最后修改:2021 年 04 月 10 日 08 : 23 PM
如果觉得我的文章对你有用,请随意赞赏