博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++和c混合编程--注释
阅读量:2348 次
发布时间:2019-05-10

本文共 597 字,大约阅读时间需要 1 分钟。

1、CPP调用C函数和C调用CPP函数,Makefile编写思路

先g++ -c或gcc -c将cpp文件或c文件编译成.o文件

然后gcc或g++将.o和c文件或cpp文件编译成bin文件

2、CPP和C函数区别

前者__addii,表示有两个参数,分别为整形,便于多态和重载

后者__add

两者的区别导致连接时会出错

3、CPP调用C函数,Makefile示例

ccpptest:cppfile exe

cppfile:cppExample.cpp
        g++ -c cppExample.cpp -o cppExample.o
exe:
        gcc cFile.c cppExample.o -lstdc++ -o exe
clean:
        rm -f exe
        rm -f *.o

4、extern "C"作用

CPP调用C函数:extern "C"在CPP文件中,main函数在CPP文件中,作用是告诉编译器,调用的这个函数是C函数,将其编译成CPP形式的函数

C调用CPP函数:extern “C“也在CPP文件中,main函数在C文件中,作用是告诉编译器,调用的这个函数是CPP函数,将其编译成C形势的函数

5、参考资料

(1)CPP和C编译成的函数名区别

  (C和C++混合编译)

(2)编译c文件出现undefined reference to `__gxx_personality_v0'

转载地址:http://zqxvb.baihongyu.com/

你可能感兴趣的文章
如何使用Git上传和更新项目至Github
查看>>
选择排序(分析+代码调优)
查看>>
Docker
查看>>
代码优化建议,44条代码优化细节
查看>>
快速排序(图解分析+代码调优)
查看>>
Java基础面试总结
查看>>
HashMap遍历几种方式比较(传统的Map迭代方式对比JDK8的迭代方式)
查看>>
Java面试& HashMap实现原理分析
查看>>
数据库常见面试题解析
查看>>
SSM面试总结
查看>>
阿里云ECS服务器安装图形化界面的安装和卸载
查看>>
PS修改动图字幕
查看>>
PS教程之肖像美容
查看>>
Spring面试题总结的很全面,附带超详细答案
查看>>
IDEA构建JDK8源码阅读的环境以及问题解决方案
查看>>
八大基础排序总结
查看>>
Linux下安装使用FastDFS
查看>>
后台管理系统之品牌管理
查看>>
后台管理系统之商品规格管理
查看>>
后台管理系统之商品管理
查看>>