例如
error LNK2019: unresolved external symbol _snprintf referenced in function _elog_hexdump
.
表达的意思是在函数elog_hexdump
中引用不存在的符号snprintf
,而不是_snprintf
.
为什么会这样?
在查看Linker Tools Error LNK2019 | Microsoft Docs,并且去谷歌搜索后也没有找到答案.
1
Mithril 2020-11-19 09:46:59 +08:00
一般来说是因为你 DLL 里面导出函数的声明有问题,或者忘了加 lib 文件。
不过你这个是因为 printf 系列函数全部改成 inline 的了,你得在你的代码里引用 crt 的 header,或者添加上那个 legacy stdio 的 lib |
2
codehz 2020-11-19 09:55:26 +08:00 via Android 1
是调用约定的问题,具体内容自己搜索
|
3
si 2020-11-19 09:57:38 +08:00 1
搜索:函数名修饰,VC 的编译器会在 C 的函数名前面加个下划线,stdcall 的还在后面加上 @参数字节数。C++的还后面加上参数类型,用不同的字母代表不同的类型。
|