我尝试使用SDK,因为我有一个H和OBJ文件。 H文件将所有函数声明为extern" C",但在链接时,我得到"无法解析外部符号_ibclr @ 4"。该函数被称为ibclr并采用4B参数,因此看起来它只是C ++的装饰。但是extern" C"不工作?
答案 0 :(得分:1)
_ibclr@4
看起来像__stdcall
整理,而不是C ++重整。
确保在声明中指定正确的调用约定。如果图书馆作者没有指定,请尝试__cdecl
。如果您使用的是Visual C ++,则它具有默认调用约定的编译器选项,此选项的默认值为__cdecl
。