美文网首页
C/C++编译区别

C/C++编译区别

作者: blue_lights | 来源:发表于2021-08-28 12:53 被阅读0次

    为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同。

    extern "C" { 

    C代码

    }

    被extern "C"修饰的变量和函数是按照C语言方式编译和连接的。

    作为一种面向对象的语言,C++支持函数重载,而过程式语言C则不支持。函数被C++编译后在符号库中的名字与C语言的不同

    C++函数重载

    void foo(int x, int y);    -->编译结果:_foo_int_int

    void foo(int x, float y);-->编译结果:_foo_int_float

    C没有重载

    void foo(int x, int y); -->编译结果:_foo

    所以在C/C++混合编程的时候要记得添加  extern "C"来区分代码块、

    相关文章

      网友评论

          本文标题:C/C++编译区别

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