#ifdef __cplusplus extern "C" { #endif 的解释

本文介绍了在C++中如何使用`extern "C"`来处理C语言的函数,以便于C++调用。`__cplusplus`是C++的预定义宏,用于区分C++环境。通过`extern "C"`声明,可以避免C++的名称修饰,使得C函数在C++中能正确链接。同时,文章提供了C调用C++函数的例子,强调了在头文件和源文件中都需要使用`extern "C"`来确保C的命名规则。
摘要由CSDN通过智能技术生成

作者:宋老师,华清远见嵌入式学院讲师。

1、在好多程序中我们会遇到下面代码段

#ifdef __cplusplus
extern "C" {
#endif

//c语法代码段

#ifdef __cplusplus
}
#endif //

首先应该知道,__cplusplus是CPP中的自定义宏,则表示这是一段cpp的代码,编译器按c++的方式编译系统.。如果这时候我们需要使用c语言的代码,那么就需要加上(extern "C" { )这一段来说明,要不编译器会把c代码按c++模式编译,会出现问题。

这句话的意思是:这个代码是CPP的代码,__cplusplus是cpp中的自定义宏,因此,以CPP语言的形式编译,但是里面的代码有C语言的代码,那么就要“extern "C" { ”说明一下,编译器用C语言的模式编译。

#ifdef __cplusplus //c&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值