首页 > 编程语言 > 详细

C代码调用C++动态库

时间:2021-04-02 12:24:53      阅读:17      评论:0      收藏:0      [点我收藏+]

最近在工作中遇到了修改C++代码嵌入到C代码中去,C肯定不能直接用C++代码,就需要自己去修改成C代码,所以我就决定在C中调用C++动态库(谁让我懒呢),话不多说,直接上步骤

第一步:编写C++代码

int_sum.cpp:

#include "int_sum.h"

int int_sum(int num0, int num1)
{
  return num0 + num1;
}

int_sum.h:
#ifndef __READ_DIR_H__
#define __READ_DIR_H__

#ifdef __cplusplus
extern "C" {
#endif
  int int_sum(int num0, int num1);
 #ifdef __cplusplus
}
#endif
#endif
第二步:编成动态库

g++ -fPIC -shared -o libint_sum.so int_sum.cpp int_sum.h

成功如下图所示:

技术分享图片

 

第三步:编写C代码

test.c:

#include <stdio.h>
#include "int_sum.h"

int main()
{
  int sum = int_sum(1, 2);
  printf("%d\n", sum);
  return 0;
}

第四步:调用动态库,生成可执行程序,并执行程序

g++ -L. -lint_sum test.c -o test

成功如下图所示:

技术分享图片

 

 到这里就大功告成辣,总的来说还是比较简单的,但是在工作中再简单的东西,不经常使用也是会很容易忘记的,每次都去百度都是时间成本的浪费,所以做好笔记是一件非常重要的事情,以后遇到类似问题直接查阅,提高工作效率

 

C代码调用C++动态库

原文:https://www.cnblogs.com/xiaohei123/p/14609794.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!