C语言调用C++利用外部API写的一个函数,如何做

Henley_Liang 2019-09-27 02:59:15
问题如下
(1) 先用C++利用外部的C++开发的一个API写了一个函数;
(2) 然后在C语言中调用C++写的这个函数;
报下面的错误
无法解析的外部符号 _run,该符号在函数 _main 中被引用

于是我将C++写的这个函数放到
extern "C"{}里面
报和早期的规范不一致

想请教一下,想这种调用应该如何解决了
...全文
173 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
铖邑 2019-09-27
  • 打赏
  • 举报
回复
引用 7 楼 Henley_Liang 的回复:
[quote=引用 6 楼 SuperDay 的回复:] [quote=引用 5 楼 Henley_Liang 的回复:][quote=引用 3 楼 SuperDay 的回复:] 楼主所说的这个外部API是什么意思呢?
一个官方的API,用C++写的[/quote]那就是动态连接库吧?可以查看函数列表吧?[/quote] 官方没有封装成dll,是一个C++的类,有头文件,源文件.我自己基于这个写了一个类,然后再用我自己的类,写了一个函数 [/quote]可以自己导出dll,这样调用的时候就不会有前缀了
Henley_Liang 2019-09-27
  • 打赏
  • 举报
回复
引用 6 楼 SuperDay 的回复:
[quote=引用 5 楼 Henley_Liang 的回复:][quote=引用 3 楼 SuperDay 的回复:] 楼主所说的这个外部API是什么意思呢?
一个官方的API,用C++写的[/quote]那就是动态连接库吧?可以查看函数列表吧?[/quote] 官方没有封装成dll,是一个C++的类,有头文件,源文件.我自己基于这个写了一个类,然后再用我自己的类,写了一个函数
铖邑 2019-09-27
  • 打赏
  • 举报
回复
引用 5 楼 Henley_Liang 的回复:
[quote=引用 3 楼 SuperDay 的回复:] 楼主所说的这个外部API是什么意思呢?
一个官方的API,用C++写的[/quote]那就是动态连接库吧?可以查看函数列表吧?
Henley_Liang 2019-09-27
  • 打赏
  • 举报
回复
引用 3 楼 SuperDay 的回复:
楼主所说的这个外部API是什么意思呢?
一个官方的API,用C++写的
the_sea1 2019-09-27
  • 打赏
  • 举报
回复
调用约定 _stdcall
铖邑 2019-09-27
  • 打赏
  • 举报
回复
楼主所说的这个外部API是什么意思呢?
轻箬笠 2019-09-27
  • 打赏
  • 举报
回复
是不是需要在每个导出函数前面放一个__stdcall?
自信男孩 2019-09-27
  • 打赏
  • 举报
回复
如果C的代码调用C++的接口,建议用C++编译器去编译~

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧