小编use*_*567的帖子

C文件中需要extern“ C”吗?(解决奇怪的Eclipse行为)

我对使用gcc和g ++工具的混合C / C ++应用程序比较陌生。为了获得帮助,我下载了iperf源代码并使用Eclipse成功构建了它。

有一个奇怪的地方:如果我使用Eclipse查看文件“ Thread.c”,它会认为存在语法错误,并且几乎在整个文件下划线,就好像代码有缺陷,这绝对不是。

这是触发它的代码:

#ifdef __cplusplus
extern "C"
{
#endif
Run Code Online (Sandbox Code Playgroud)

我知道C ++中使用的extern“ C”是什么,但是Eclipse在.c文件中存在问题。它很高兴在.cpp和.h文件中接受它。

我已经检查了Make实用程序如何构建iperf应用程序,并且看到它总是使用gcc编译c文件,使用g ++编译cpp文件,这使我想知道是否实际需要extern“ C”。它绝对不会造成伤害,因为gcc编译器会愉快地处理它,但是如果不是严格要求,我可以省略它并在Eclipse中获得更好的可读性。

我还研究了一种针对Eclipse行为的可能解决方案,但还没有真正找到一个解决方案,如果有人可以指出如何解决这一问题同样好。

c c++ eclipse gcc g++

3
推荐指数
1
解决办法
1960
查看次数

标签 统计

c ×1

c++ ×1

eclipse ×1

g++ ×1

gcc ×1