我正在尝试解决我的链接器错误:
错误 LNK2019:函数中引用了未解析的外部符号 _WDC_ReadAddr32@16
我不确定 @16 指的是什么。
我很确定我向项目添加了正确的 lib 文件。我使用 dumpbin.exe 转储了 lib 文件,并看到:
- _WDC_ReadAddr16@20
- _WDC_ReadAddr32@20
- _WDC_ReadAddr64@20
- _WDC_ReadAddr8@20
所以我很困惑为什么链接器会寻找 _WDC_ReadAddr32@16,即使它设法链接了该 lib 文件中的其他符号。
函数原型(prototype)为:
DWORD DLLCALLCONV WDC_ReadAddr32(WDC_DEVICE_HANDLE hDev, DWORD dwAddrSpace, KPTR dwOffset, UINT32 *val);
我正在使用 Visual Studio 2010 进行编译。此外,lib 文件是用 C 编译的,因此它在方法周围有 extern "C",但我试图在 C++ 项目中使用它。
最佳答案
@ 符号指的是 number of bytes of parameters for the function根据雷蒙德陈
关于c++ - LNK2019错误中的@符号是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19775113/