Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1342540
  • 博文数量: 244
  • 博客积分: 1039
  • 博客等级: 少尉
  • 技术积分: 1562
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-06 09:40
文章分类

全部博文(244)

文章存档

2021年(2)

2019年(6)

2018年(2)

2014年(1)

2013年(187)

2012年(47)

分类: C/C++

2013-07-08 11:34:31

一句话概括extern “C”的目的:

具体用法:
1.在C++中引用C语言中的函数和变量,在包含C语言头文件是,需进行下列处理: (相对简单)
extern "C"
{
    #include "cExample.h"
}


2.在C中引用C++语言中的函数和变量,C++头文件中需添加extern “C”,而在C语言中不能直接引用声明了extern “C”的头文件,而应该仅将C文件中在C++中定义的extern “C”函数声明为extern类型
例如:
C++头文件
#ifndef CPP_EXAMPLE_H
#define CPP_EXAMPLE_H
extern "C" int add(int x, int y);
#endif
C++实现文件cpp_Example.cpp
#include "cppExample.h"
int add(int x, int y)
{
    return x + y;
}


C 实现函数Cfile.c   (或者从新定义一个新的头文件,含有c++的接口,给c使用的)
extern int add(int x, int y)
int main(int argc, char* argv[])
{
    add(2, 3);return 0;;
}
阅读(2202) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~