page contents

在C++程序中调用被C编译器编译后的函数,为什么要加extern"C"?

轩辕小不懂 发布于 2021-10-12 16:47
阅读 574
收藏 0
分类:C/C++开发
  • c++
  • 2128
    Nen
    Nen
    - 程序员

    C++语言支持函数重载,C语言不支持函数重载。函数被C++编译后在库中的名字与C语言的不同。假设某个函数的原型为: void foo(int x, int y);该函数被C编译器编译后在库中的名字为foo,而C++编译器则会产生像foointint之类的名字。C++提供了C连接交换指定符号extern"C"来解决名字匹配问题。

    请先 登录 后评论