extern “C“的定义和使用

目录

extern "C"的定义

extern "C"的使用 


extern "C"的定义

当我们用c++写一些函数的时候,需要将这些函数提供给c语言的程序时候,因为二者命名规则的不同导致c语言无法调用c++写的函数,这时候,我们可以将c++写的函数前面添加一个extern "C"
说明这个函数是以c语言的风格命名的,这样就可以调用这个函数了

c++中gcc的命名规则,_Z+函数名长度+函数名+类首字母
c中的命名规则,函数名

extern "C"的使用 

int Add(int x, int y)	//在c++中,链接时候的函数名是_Z3Addii
{						//在c中,链接时候的函数名是Add
	return x + y;
}
extern "C" int Add(int x, int y)	
{					
	return x + y;
}

当我们在前面添加extern "C"的时候,c++的链接时候的函数名也是Add了

注意:经过extern "C"修饰的函数不能进行函数重载了

经过extern "C"修饰的函数可以和没经过extern "C"修饰的函数同名存在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一起慢慢变强

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值