-
7 votesanswersviews
我们可以在没有#ifdef __cplusplus的C文件中使用extern“C”吗?
为什么不应为需要定义为C函数的函数指定 extern "C" ?将文件编译为C源时,对编译器有什么影响? 如果对C编译器没有影响,我们不能通过删除 #ifdef __cplusplus 检查在头文件中定义一个函数,如下所示吗? extern "C" { int MyFunc(); } An answer to another question说需要... -
1298 votesanswersviews
外部“C”在C中有什么影响?
将 extern "C" 放入C代码究竟做了什么? 例如: extern "C" { void foo(); } -
260 votesanswersviews
结合C和C - #ifdef __cplusplus如何工作?
我正在开发一个包含大量遗留代码的项目 . 我们对 C 和C如何相互作用有点困惑 . 我理解通过用 extern "C" 包装 C 代码,C编译器不会破坏 C 代码's names, but I' m并不完全确定如何实现它 . 因此,在每个 C 头文件的顶部(在包含警卫之后),我们有 #ifdef __cplusplus extern "C" { #endif...