extern这个关键字

extern

"extern"关键字
由于C语言编译器和C++编译器生成符号的规则是不同的,C编译器生成函数符号是根据函数名而来,而C++编译器生成符号是根据函数名和参数列表而来的,不过C++编译器也能生成C语言的符号,只要把代码在extern "C"下面就可以了
C++调用C的函数时:
一定要加上extern “C”,如果不加,链接时编译器找的就是C++的sum符号,根本找不到C语言生成的符号sum,链接就失败了!因此一定要加上,表示告诉编译器这个函数是用C实现的,因此你去找C规则的sum符号吧,这时编译器就可以找到了。
eg:
在这里插入图片描述
C调用C++的函数时:
要用extern "C"把C++中的函数括起来,以便告诉编译器到时候用C的规则进行编译。
eg:

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值