我在TestExecute.cpp中遇到此错误 -
“符号'std'无法解析”
CODE
#include <iostream>
using namespace std;
我刚刚在Eclipse中创建了一个可执行项目(在Windows 7中),如下所示。看来我正在选择一个不受支持的工具链。是这样吗?我已经安装了Cygwin,它可以在首选项中使用。
编辑:根据@RobertoWilko评论,删除行“using namespace std; “删除了错误。但是没有创建二进制文件。”启动失败。二进制没有找到“。如何纠正这个?
答案 0 :(得分:18)
尝试此步骤:https://www.eclipse.org/forums/index.php/t/636348/
基本上: &#34;转到项目 - &gt;属性 - &gt; C / C ++一般 - &gt;预处理器包括路径,宏等 - &gt;提供商 - &gt; CDT GCC内置编译器设置,取消激活使用项目之间共享的全局提供程序并添加命令行参数-std = c ++ 11。
答案 1 :(得分:15)
我不知道你是否已经解决了这个问题,但我想发布我的解决方案,因为那些可能会遇到同样的问题。
首先,确保您拥有&#34;包含&#34; Project Explorer中的文件夹。如果您没有,请转到第二步。如果你有,请转到第三步。
其次,窗口 - &gt;首选项&GT; C / C ++ - &gt;构建&gt;环境:创建两个环境变量:
a)姓名:C_INCLUDE_PATH
价值:/usr/include
b)姓名:CPLUS_INCLUDE_PATH
价值:/usr/include/c++
转到Cygwin/usr/include/
,如果找不到文件夹&#34; c ++&#34;,请从\cygwin\lib\gcc\i686-pc-cygwin\X.X.X\include
复制,然后重启Eclipse。
你会发现没有符号无法解决的问题。
我记录了我的解决方案,希望有人可以获得好处。
答案 2 :(得分:6)
您可以像这样重写代码:
#include<iostream>
#include<stdio.h>
using namespace std;
答案 3 :(得分:4)
对于MinGW,这对我有用:
Properties
C/C++ General
- Paths and Symbols
- Includes
- GNU C++
- Include directories
Add...
Variables...
MINGW_HOME
,然后点击OK
Apply
和OK
您现在应该在项目浏览器的“包含”中看到几个MinGW路径 错误可能不会立即消失,您可能需要刷新/构建项目。
如果您使用的是Cygwin,则可能存在等效变量。
答案 4 :(得分:4)
项目中的includes文件夹可能缺少/ usr / include / c ++。 转到项目资源管理器中的项目,右键单击 - &gt;属性 - &gt; C \ C ++ Build - &gt;环境 - &gt;添加 - &gt; value = / usr / include / c ++。重启eclipse。
答案 5 :(得分:3)
让我解决问题的原因是:项目 - &gt;属性 - &gt; C / C ++一般 - &gt;预处理器包括路径,宏等 - &gt;提供商 - &gt; CDT GCC内置编译器设置,启用并禁用CDT Cross GCC内置编译器设置
答案 6 :(得分:1)
安装 C ++ SDK :
帮助&gt;安装新软件&gt;使用:path for your eclipse version
&gt;搜索 C ++ 并安装C ++ sdk开发工具。
路径示例:Mars - http://download.eclipse.org/releases/mars
答案 7 :(得分:1)
我在Kubuntu上使用带有16.04内核的Eclipse Neon遇到了这个问题,我不得不将我的#include <stdlib.h>
更改为#include <cstdlib>
这使得std名称空间&#34;可见&#34;到Eclipse并删除了错误。
答案 8 :(得分:1)
这对我来说适用于C / C ++开发人员的Eclipse IDE版本:2020-03(4.15.0)Build ID:20200313-1211。另外,我的代码是交叉编译的。
如果您不知道您的gcc版本,请在控制台中输入以下内容(确保它是您的跨gcc二进制文件):
gcc -v
修改交叉编译器的方言(这就是技巧)。
答案 9 :(得分:0)
我所报告的问题在我看来是由以下原因造成的:
在这种情况下,Eclipse无法识别要使用的正确编译器。
答案 10 :(得分:0)
首先尝试重新启动 Eclipse,在我的情况下,我更改了项目的不同编译器设置,然后显示此消息,重新启动后即可工作。