真就应该是这个问题吧,c++的函数给c的调用前面应该有extern "C"

解决方案 »

  1.   

    c++的函数给c的调用前面应该有extern "C"
      

  2.   

    同意楼上。
    在C++中的符号(变量或函数),如果要被C函数调用,则应连接成C格式
      

  3.   

    加extern "C" 不行啊
    大家可以试试看
    .CPP里调用 .C文件里写的全局函数可以在.cpp
    文件里声明为 extern "C" FunName;
    我的问题是如何在.c调用.cpp里的全局函数
      

  4.   

    在头文件里声明啊。
    #ifdef cplusclus
    extern "C"
    {
    #endifint g_num;
    void fun();#ifdef cplusclus
    }
    #endif
      

  5.   

    楼上的方式明显是适合于在.c文件里定义方法,在.cpp文件里引用
    而我问的刚好相反
      

  6.   

    在a.cpp文件中,定义方法void hhh(){}的时候,前面加extern "C" ,如下
    extern "C"  void hhh(void){}注意:无参数时需要带void