android ndk开发之 extern "C" 编译出错

感叹:神一般的eclipse!

 

 

   首先, 我这么写 extern "C" void func(){}; 代码爆红:(error: expected identifier or ‘(’ before string constant ) 

   what the fuck!!

   百度后是说c编译器不支持这种写法, 会报错, 虽然我知道我用的是c++编译器,然而决定还是改一下

 

        #ifdef __cplusplus

      #define EXTERNC externc "C"

        #else

                  #define EXTERNC

         #endif

 

EXTERNC void func(){};

 

 

      果不其然还是飘红。

   

 

      没办法,试着改成这样:

  #ifdef __cplusplus

                 #define EXTERN extern

      #define EXTERNC EXTERN "C"

        #else

                  #define EXTERNC

         #endif

     

奇迹出现了, 不爆红了, 编译通过!!!

 

       不开心, 我们再改回来。

     #ifdef __cplusplus

      #define EXTERNC externc "C"

        #else

                  #define EXTERNC

         #endif

 

  不爆红了, 居然不爆红了!!!

 

 

            我只想说, eclipse c/c++编译器, 泥垢了!!!!

 

  

posted @ 2016-07-13 19:07  章炎  阅读(1039)  评论(0编辑  收藏  举报