C++ 链接到C函数
这个表述的意思我看懂了,代码我没看懂,预处理链接了C语言,后面引入了一个c函数。但是这段代码表明的是什么意思????
回答:
当用 C++ 编译时,__cplusplus
被定义,代码变为
extern "C"int strcmp(const char*, const char*);
(C++ 里必须提供 extern "C"
以正确链接 C 函数)
当用 C 编译时,__cplusplus
没有定义,代码变为
int strcmp(const char*, const char*);
(C 并不支持 extern "C"
,如果有 extern "C"
会出错)
这样,这段代码即可以作为 C 编译,又可以作为 C++ 编译。
这种代码一般出现在头文件里,以便这个头文件即可以被 C 文件包含,也可以被 C++ 文件包含。
以上是 C++ 链接到C函数 的全部内容, 来源链接: utcz.com/p/193311.html