在 pro*C 文件中调用 C 函数
我的 pro*C 程序中有这些行。函数 initAverage(int i) 是用 C 语言定义的,我试图在 .pcc (Pro C++) 文件中调用此函数。
我收到错误
Error: initAverage(int i);was declared before with a different language
extern "C"
{
int initAverage(int i);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可能之前有一个 include 已经声明了
initAverage
而没有extern "C"
。查看initAverage
的所有声明并修复缺少的extern
声明,这样就可以了。附:
添加 调用约定 明确是一个好主意。我也会补充这一点(虽然实际上不是问题的一部分)
You probably have an include before that already declares
initAverage
withoutextern "C"
. Look at all declarations ofinitAverage
and fix the missingextern
declaration then it should be fine.PS:
Adding the calling convention explicitly is a good idea in general. I would add that too (while not being actually part of the question)