将C的代码,转到VC++后编译失败:error LNK2028: unresolved token /error LNK2019: unresolved external symbol
将C下的代码直接Copy到VC++下,编译错误。如何解决?
主要有以下两类错误
Test.obj : error LNK2028: unresolved token (0A000036) "int __stdcall cmpp30icp_convert_src_addr_to_base64(char *,char *) " (?cmpp30icp_convert_src_addr_to_base64@@$$FYGHPAD0@Z) referenced in function "void __cdecl print_deliver_packet(struct cmpp30icp_deliver *) " (?print_deliver_packet@@$$FYAXPAUcmpp30icp_deliver@@@Z)
Test.obj : error LNK2019: unresolved external symbol "unsigned __int64 __stdcall ntohll(unsigned __int64) " (?ntohll@@$$FYG_K_K@Z) referenced in function "void __cdecl print_deliver_packet(struct cmpp30icp_deliver *) " (?print_deliver_packet@@$$FYAXPAUcmpp30icp_deliver@@@Z)
[解决办法]
把你的代码贴贴
[解决办法]
并不是所有C的源代码都可以直接粘贴到C++的.cpp文件,就可以顺利通过链接器而得到.exe!
其中关于函数的调用方式,名字解析,变量的初始经规定等等都有不同,你没提供源代码,我也就只能这样回答你了。
[解决办法]
cmpp30icp_convert_src_addr_to_base64 这个是Lib里面的吧? 把所有Lib里面实现的函数Declare的时候都加上:
extern "C "
你的问题是Lib还是C编译的,没有做name mangling, C++ 的部分做了,所以找不到了。
[解决办法]
api.lib 、api.dll 拷贝到工程所在的目录下
将C的代码,转到VC++后编译失败:error LNK2028: unresolved token /error LNK2019: unresolved ex
将C的代码,转到VC++后编译失败:error LNK2028: unresolved token/error LNK2019: unresolved external sym
