C语言中 #ifdef cplusplus #define _EXTERN_C extern"c" #else #define _EXTERN_C #endif 是什么意思?谢#ifdef __cplusplus#define __EXTERN_C extern "C"#else#define __EXTERN_C#endif__EXTERN_C extern void main(void);

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/13 00:56:23
C语言中 #ifdef cplusplus #define _EXTERN_C extern

C语言中 #ifdef cplusplus #define _EXTERN_C extern"c" #else #define _EXTERN_C #endif 是什么意思?谢#ifdef __cplusplus#define __EXTERN_C extern "C"#else#define __EXTERN_C#endif__EXTERN_C extern void main(void);
C语言中 #ifdef cplusplus #define _EXTERN_C extern"c" #else #define _EXTERN_C #endif 是什么意思?谢
#ifdef __cplusplus
#define __EXTERN_C extern "C"
#else
#define __EXTERN_C
#endif
__EXTERN_C extern void main(void);

C语言中 #ifdef cplusplus #define _EXTERN_C extern"c" #else #define _EXTERN_C #endif 是什么意思?谢#ifdef __cplusplus#define __EXTERN_C extern "C"#else#define __EXTERN_C#endif__EXTERN_C extern void main(void);
一般用于将C++代码以标准C形式输出(即以C的形式被调用),这是因为C++虽然常被认为是C的超集,但是C++的编译器还是与C的编译器不同的.C中调用C++中的代码这样定义会是安全的.
一般的考虑跨平台使用方法如下:
#ifdefined(__cplusplus)||defined(c_plusplus) //跨平台定义方法
extern "C"{
#endif
//...正常的声明段
#ifdefined(__cplusplus)||defined(c_plusplus)
}
#endif
简单的用在windows下可以如下定义:
#ifdef __cplusplus
extern "C"{
//...正常的声明段
}
#endif