美文网首页C++ 杂记
在 C++ 程序中调用被 C 编译器编译后的函数,为什么要加

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

作者: 赵者也 | 来源:发表于2017-11-16 23:55 被阅读12次

C++ 中多了重载。也就是说,函数名一样,函数的参数和返回值可以不同
为了做到这个,函数在编译时都会重新命名
用 C 编译器编译的函数没有按这种规则重新命名,那么你加上 extern,告诉 c++ 编译器
“这是 C 编译器编译的程序,要按 C 的命名方式来识别函数”

相关文章

  • 找不到工作的人还在学习(c++)

    一、程序设计基础概念 1、在c++程序中调用被c编译器编译后的函数,为什么要加extern “C”? c++语言支...

  • C++基础面试

    面试中的C++常见问题 1.在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”? 答:首...

  • C++常见基础知识

    1.在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”? 答:首先,extern是C/C...

  • C++工程师常见的面试题总结

    1.在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”? 答:首先,extern是C/C...

  • C++面试常见问题上(含答案)

    1.在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”? 答:首先,extern是C/C...

  • c和c++的关系

    1 在c++中调用被c编译器编译后的函数,为什么要加extern "c"; 因为c++语言支持函数重载,而c语言不...

  • c++   inline

    在C中,编译器使用宏定义节省编译时间。在C++中使用内联函数来实现同样的效果。在程序编译时,编译器会将内联函数调用...

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

    C++ 中多了重载。也就是说,函数名一样,函数的参数和返回值可以不同为了做到这个,函数在编译时都会重新命名用 C ...

  • c和c++混编注意事项

    1、c的编译器与c++编译器生成函数签名机制不同,所以在cpp文件中引用c语言的函数需要加 extern C{ ...

  • 如何识别C++编译以后的函数名

    如何识别C++编译以后的函数名(demangle) C/C++语言在编译以后,函数的名字会被编译器修改,改成编译器...

网友评论

    本文标题:在 C++ 程序中调用被 C 编译器编译后的函数,为什么要加

    本文链接:https://www.haomeiwen.com/subject/lmcdvxtx.html