#ifdef _cplusplus extern “C“ 含义及应用

举报
AI浩 发表于 2021/12/22 23:30:23 2021/12/22
965 0 0
【摘要】 #ifdef _cplusplus:编译器如果是C++    extern"C" 来告诉编译器:这是一个用C写成的库文件,请用C的方式来链接它们。 他们经常出现在.h文件中。 例: #ifndef _INC_MYSOCKETCLIENT_H_#define _INC_MYSOCKETCLIENT_H_//#d...

#ifdef _cplusplus:编译器如果是C++   

extern"C" 来告诉编译器:这是一个用C写成的库文件,请用C的方式来链接它们。

他们经常出现在.h文件中。

例:


      #ifndef _INC_MYSOCKETCLIENT_H_
      #define _INC_MYSOCKETCLIENT_H_
      //#define Import_SSS
      #ifdef Import_SSS
      #define API _declspec(dllexport)
      #else 
      #define API _declspec(dllimport)
      #endif
      #ifdef _cplusplus//extern"C" 来告诉编译器:这是一个用C写成的库文件,请用C的方式来链接它们。
      extern "C" {
      #endif // _cplusplus
      	API//导出函数,让外界调用。
     	int socketClient_Init(void **handle);
     	API
     	int socketClient_Send(void *handle, unsigned char *buf, int buflen);
     	API
     	int socketClient_Recv(void *handle, unsigned char *buf, int *buflen);
     	API
     	int socketClient_Destory(void *handle);
      #ifdef _cplusplus
      }
      #endif // _cplusplus
      #endif //_INC_MYSOCKETCLIENT_H_
  
 

文章来源: wanghao.blog.csdn.net,作者:AI浩,版权归原作者所有,如需转载,请联系作者。

原文链接:wanghao.blog.csdn.net/article/details/108507901

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。