extern "c"相关
来源:互联网 发布:大数据可视化解决方案 编辑:程序博客网 时间:2024/05/16 19:50
看下面的一个面试题:为什么标准头文件都有类似的结构
#ifndef __INCvxWorksh
#define __INCvxWorksh
#ifdef __cplusplus
extern "C"{
#endif
/*一段代码*/
#ifdef __cplusplus
}
#endif
#endif /*end of __INCvxWorksh*/
分析:
1.蓝色部分:结构 #ifndef ...#define...#endif 是为了防止头文件被重复引用
2.红色部分:
#ifdef __cplusplus:的意思,当前是否为c++编译器,__cplusplus为cpp自己定义的一个宏
extern "C" :表示以下代码按照语言方式进行编译和链接
之所以出现两次 #ifdef __cplusplus,是为了在C编译环境下也可以正常运行,否则的话代码部分就被跳过了。
- extern "c"相关
- extern &&extern c
- extern, extern "C",__stdcall
- extern与extern "C"
- extern 和extern "C"
- extern与extern “C”
- extern 与 extern "C"
- extern 和 extern“C”
- c/c++:extern,extern "C"
- C plus plus(3)---全局,静态(extern,static相关)
- extern“C” ???
- extern "C"
- C extern
- extern"c"
- extern "C"
- extern "C"
- extern "C" {}
- C extern
- [远程测控通信]基于DataSocket的电台网络化远程测控系统
- 提高你的Python: 解释‘yield’和‘Generators(生成器)
- iOS: NSData的方法getBytes:range:
- c++中内存类型
- 《重构》读书笔记(五)——第四章&第五章
- extern "c"相关
- c语言多参数函数写法
- C语言警报声程序
- 最长公共子序列模版
- qemu单元测试二
- 最长上升子序列模版
- linux_apt管理
- iOS: NSData的方法initWithBytes:length:
- C++学习笔记2.2 : 容器和算法之关联容器