C++学习笔记 extern C
来源:互联网 发布:科目四考试软件 编辑:程序博客网 时间:2024/06/06 06:44
C++头文件中的extern “C”的作用,一般都是如下形式
#ifdef __cplusplusextern "C" {#endif /* __cplusplus */中间还有很多其他的#ifdef __cplusplus}#endif /* __cplusplus */
首先要清楚的是 extern “C”是只有C++编译器才理解的东西,C的编译器会报错的。C++编译器添加这个的目的是为了让c的代码和c++代码能更好的一起工作。
因为编译之后函数的名字都是存放在符号表中的,而且C和C++为函数命名的方式是不同的,如下例
void foo( int x, int y );c编译后函数名字:_fooc++编译后名字:_foo_int_int
c++这种方式叫做mangled name,是将函数参数类型加了进来,用以支持重载, 如果用 extern “C”包围的话,C++在编译是就会使用C的函数命名方法来命名
参考: 这篇文章
0 0
- extern "C" 学习笔记
- C++学习笔记 extern C
- extern "C" 阅读笔记
- extern “C” 阅读笔记
- extern C学习
- C/C++学习笔记(十二)extern的详解
- C语言学习笔记之static和extern(十六)
- C程序设计语言(K&R)学习笔记--5.extern小结
- 【C语言学习笔记】关键字:typedef、static和extern
- c语言学习笔记之static和extern关键字
- c语言学习笔记---存储类型auo,register,extern,static
- C语言文件操作包括static,extern的学习笔记
- extern "C" 阅读笔记 zz
- #ifdef __cplusplus extern "C" 笔记
- c/c++:extern,extern "C"
- C++学习之extern "C"
- extern ''C'' 的 学习浅谈
- C语言学习之extern "C"
- 【教程】BeautifulSoup中使用正则表达式去搜索多种可能的关键字
- mongodb的安装和简单命令
- web.py 十分钟创建简易博客
- 欢迎使用CSDN-markdown编辑器
- 奇怪的分组(stone)
- C++学习笔记 extern C
- 范数、奇异值
- JavaScript全局变量与局部变量实验
- 为什么选择Android Studio 而不再固守 Eclipse?
- 【转播公告】
- Mongo库表操作命令
- 64 鸡兔同笼
- MongoDB安装和简介
- JAVA_SE基础——12.运算符的优先级