extern“C”

来源:互联网 发布:类似todolist的软件 编辑:程序博客网 时间:2024/04/29 20:46

见过好多次,这里记录一下

 

C++允许同名函数存在,所以编译器会对函数名重新编码。C++代码包含C语言的头文件时,重新编码名字与C语言库中的原函数名不一致,结果造成找不到函数的情况。为了让C语言实现的函数在C++中可以调用,需要在头文件中加点东西:

 

 

#ifdef __cplusplus

extern "C"{

#endif

    ...

    ...

#ifdef __cplusplus

}

#endif

 

这个结构表示如果在C++中调用这里的函数,编译器不能对函数名进行重新编码。两个大括号之间可以添加C代码。

 

原创粉丝点击