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

举报
AI浩 发表于 2021/12/22 23:30:23 2021/12/22
【摘要】 #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文件中。

例:


  
  1. #ifndef _INC_MYSOCKETCLIENT_H_
  2. #define _INC_MYSOCKETCLIENT_H_
  3. //#define Import_SSS
  4. #ifdef Import_SSS
  5. #define API _declspec(dllexport)
  6. #else
  7. #define API _declspec(dllimport)
  8. #endif
  9. #ifdef _cplusplus//extern"C" 来告诉编译器:这是一个用C写成的库文件,请用C的方式来链接它们。
  10. extern "C" {
  11. #endif // _cplusplus
  12. API//导出函数,让外界调用。
  13. int socketClient_Init(void **handle);
  14. API
  15. int socketClient_Send(void *handle, unsigned char *buf, int buflen);
  16. API
  17. int socketClient_Recv(void *handle, unsigned char *buf, int *buflen);
  18. API
  19. int socketClient_Destory(void *handle);
  20. #ifdef _cplusplus
  21. }
  22. #endif // _cplusplus
  23. #endif //_INC_MYSOCKETCLIENT_H_

 

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

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

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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