c++ - 在 pro*C 文件中调用 C 函数

标签 c++ extern

我的 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);
}

最佳答案

您之前可能有一个 include 已经声明了 initAverage 而没有 extern "C"。查看 initAverage 的所有声明并修复丢失的 extern 声明,然后它应该没问题。

附言: 添加 calling convention一般来说,明确是个好主意。我也会补充一点(虽然实际上不是问题的一部分)

关于c++ - 在 pro*C 文件中调用 C 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2942784/

相关文章:

c++ - 将 main 声明为 extern "C"是否合法 C++?

C++:我不明白 'extern' 关键字在我的程序中是如何工作的

c++ - 将 int 映射到模板 int

c++ - 从 C++ 中的二维 Safearray 获取值

c++ - 从外部函数访问外部结构属性

xcode - 用C语言定义一个 `extern` var,xcode发送一个 `Undefined symbols for architecture x86_64`

c# - 在 C# 中定义 extern "C"函数

c++ - 有没有人有幸为 Mapnik 编译这个 .NET 绑定(bind)?

c++ - CUDA。如何展开前 32 个线程以便它们并行执行?

c++ - 我从指针得到一个未初始化的对象