所以我刚刚在Lnux mint 19上安装了代码块,但是我遇到了问题。 我运行了常规的hello world程序,但收到“进程以状态-1终止”。 “构建”部分有效,但是当我点击“运行”时,我得到那个错误。我已经安装了g ++并将其设置为默认编译器。有想法吗?
尝试了我在互联网上可以找到的所有内容。添加了代表,尝试从软件中心和终端进行安装,结果相同。
int main()
{
cout << "Hello world!" << endl;
return 0;
}
进程以状态-1终止
答案 0 :(得分:0)
据我所知,从您已发布的最少代码中,您就缺少了包含。
如果您没有缺少include,则不会告诉编译器cout
和endl
的位置。
您的代码应该应如下所示:
#include <iostream>
int main() {
using std::cout;
using std::endl;
cout << "Hello, World!" << endl;
return 0;
}
这是一个简短的解释。
#include <iostream>
告诉预处理器将此头文件加载到翻译单元(CPP文件)中,以便您拥有使用STL的不同对象,函数和其他成员所需的所有前向声明。
using std::cout
&& using std::endl
这两段代码专门告诉编译器您要使用std
名称空间的哪些成员。
我建议使用此方法(即使看起来很乏味),而不要使用using namespace std;
。
在这种情况下,通过using
整个名称空间,您正在污染全局名称空间。
有关为什么应避免使用using namespace
的更多示例,请参见this question。
答案 1 :(得分:0)
您的默认Linux终端似乎与调用C函数不兼容。尝试在主终端上另外安装一个普通的xterm:
$ sudo apt install xterm
尝试立即运行代码。
如果没有帮助,您也可以尝试在代码块中更改默认终端:转到“设置”>“环境”>“常规设置”,然后将终端更改为“ gnome-terminal”。
如果失败,则实际的X显示错误将有助于进一步的故障排除:
$ tail -f ~/.xsession-errors
尝试立即运行代码,并检查终端是否存在最新的xsession错误。很有可能它会以“错误设置文件元数据:”开头。在那里,您可能会找到完整的错误消息。