【VS开发】MFC中调用C函数模块的解决方案

275 篇文章 41 订阅 ¥39.90 ¥99.00
53 篇文章 40 订阅 ¥39.90 ¥99.00
本文介绍了在MFC中调用C函数模块时遇到的链接错误问题及解决方案。通过`extern "C"`关键字,确保C++编译器按照C的方式处理函数导出,避免因符号修饰差异导致的链接失败。详细讨论了C++中函数导出符号的规则,并提供了两种方法声明C函数供MFC调用。
摘要由CSDN通过智能技术生成

【VS开发】MFC中调用C函数模块的解决方案

标签(空格分隔): 【VS开发】


声明:引用请注明出处http://blog.csdn.net/lg1259156776/


说明:最近调试基于MFC的程序,当通过外部C文件引入某个function的时候,又一次忘记了C文件与C++文件的区别,直接按照一般的方式,将函数声明放入头文件,将函数定义放入C文件,然后再MFC中通过包含头文件来引用对应的function,然而爆出了链接时无法定位的错误,本文就来梳理一下C++中调用C中功能函数的方法。


首先在C文件中,.c中是不允许出现任何形式的C++调用的,所以别指望C中去调用C++文件中定义的功能函数(除非使用extern “C”告诉编译器依照C的方式来编译封装接口,因为在编译生成的目标文件中,以相同的函数名为例:int foo( float x ),C接口的函数导出符号为foo与C++接口的函数导出符号_foo_float不同,因为C++编译器为了实现函数重载,会在编译时带上函数的参数信息,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Zhang_P_Y

感谢支持

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

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

打赏作者

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

抵扣说明:

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

余额充值