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

IT互联网 已帮助: 时间:2025-06-08 20:14:59

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

难度:⭐⭐⭐

题库:IT/互联网,软件开发

标签:编译器,函数,程序

参考解答

用户头像

473***134

2025-06-08 20:14:59

C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字

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


上一篇 如何打印出当前源文件的文件名以及源文件的当前行号?

下一篇 怎样消除多重继承中的二义性?

相似问题