街角_祝福

导航

C和C++的关系

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

    C++语言支持函数重载,而C不支持。函数编译后,C和C++函数oji文件中的格式是不一样的,假设同样是void func(void)函数,C编译后库中的名字为_func,而C++的则会产生类似于_func_int_int的函数名,即C++函数库的名字中含有参数和返回值的类型。C++提供了C连接交换指定符号extern "C"来解决名字问题。

posted on 2012-06-19 20:35  街角_祝福  阅读(135)  评论(0编辑  收藏  举报