Code:
#ifdef __cplusplus
extern "C" {
#endif
...
#ifdef __cplusplus
}
#endif
解释:1.c++中定义了__cplusplus,C语言中没有该定义。即:识别是c代码还是c++代码。

如下段代码:

#include <stdio.h>

int main(int argc,char *argv[])

{

#ifdef __cplusplus

printf("This is a c ++ program!\n");

#endif

#ifndef __cplusplus

printf("This is a c program!");

#endif

reutrn 0;

}

分别编译:gcc test.c

./a.out

g++ test.c

./a.out

看到程序输出内容你便知道了。

解释2.C语言和C++编译出来的函数不用,调用extern "C"会让c++编译器按照c的编译格式来编译。多用于c++库的头文件。

最新文章

  1. mysql数据过滤
  2. Soundslice – 美妙乐谱!Web 技术高大上的应用
  3. PHP7的安装
  4. Maven学习之 仓库镜像
  5. Unity3D如何制作透贴和使用透贴模型
  6. poj: 2255
  7. http请求访问过程
  8. Oracle 关于事物的描述
  9. 优化exp/imp导入导出速度大全
  10. centos上如何安装git
  11. Java数据结构: java.util.BitSet源码学习
  12. sqlserver判断字符串是否是数字
  13. WPF项目学习.二
  14. Oracle RAC环境下定位并杀掉最终阻塞的会话-续
  15. Spring Security(三十五):Part III. Testing
  16. 读《流畅的python》第一天
  17. vue.js学习第一天,了解vue.js
  18. jqueryui插件slider的简单使用
  19. .NET开源Protobuf-net组件葵花手册
  20. maven打包某个分支的包

热门文章

  1. 吐槽下intellij idea 2018.3这个版本
  2. jdk TreeMap工作原理分析
  3. Android 面试题 MD
  4. 微信小程序页面返回传参的问题
  5. 浅谈压缩感知(二十):OMP与压缩感知
  6. java类型生命周期
  7. [Python设计模式] 第11章 迪米特法则——最少知识原则
  8. Ubuntu下搭建tftp服务器最简单方法
  9. 〖Android〗我的ADT Eclipse定制
  10. Android Data Recovery for Mac(安卓数据恢复软件)破解版安装