【问题标题】:Headers don't show up in Dev C++标头不会出现在 Dev C++ 中
【发布时间】:2019-11-29 06:48:29
【问题描述】:

我正在尝试在 dev c++ 中编写这个超级基本的 hello world 代码,但我收到了这个错误

我尝试在网上搜索相关答案

#include <iostream>
#include <conio>
void main()
{
cout<<"hello";
getch();
}

我得到的错误是:

[Error] conio: No such file or directory
compilation terminated.
recipe for target '"Hello world.o"' failed

自从我第一次学习java以来​​,我对这个简单的代码已经不熟悉了,我一直想知道为什么c++没有java那么简单

public class HelloWorld
{

public static void main(String[] args) 
{

    System.out.println("Hello World");
}

}

注意:它不需要像 c++ 这样使用 int 和返回类型的东西

我需要一种比这更好的方法而不使用
1) “使用命名空间标准”
2) "int main 并返回 0"
3) “无效::主”
和其他类似的东西

#include <iostream>
using namespace std;

int main()
{
cout << "Hello, world!";
return 0;
}

一个甜蜜而简单的解决方案,就像 java 一样。

谢谢。

P。 S. 我在 turbo C++ 中输入了完全相同的程序,它运行良好并提供了所需的输出

【问题讨论】:

  • 没有像 &lt;conio&gt; 这样的标准 C++ 标头。在抱怨之前尝试学习语言。
  • @Valay_17 Java 不是 C++。不要试图让它看起来像 Java 来学习 C++。如果你这样做,效果就不太好。
  • 同意@PaulMcKenzie,但我要求为我所面临的问题提供切实可行的解决方案。
  • 除非你从内存中删除 Java,否则你永远学不会 C++。

标签: c++ header-files dev-c++ c++98 turbo-c++


【解决方案1】:

我能想到的最短和最简单的方法是

#include <iostream>

int main() {
    std::cout << "Hello, world!\n";
}

1) main 必须在 C++ 中返回 int。但 main 也很特殊,它是 only 函数,如果您不返回值,它将隐式返回 0。所以你可以放弃return 0;

2) using namespace std; 不需要(并且积极劝阻)。您只需要明确限定您在该命名空间中调用的函数。

3) 标准 C++ 中没有 conio 标头。

【讨论】:

  • 你能解释一下std::cout的用法吗??
  • 旁注:main 必须返回int在托管环境中。否则它取决于实现,void main 是最受欢迎的
  • @Ayxan 没错,在 独立 实施中,规则是不同的。但如果 OP 不使用托管实现,我会非常感到惊讶。
【解决方案2】:

Dev C++ 使用 C++17,而 Turbo C++ 使用 C++98,它们是 C++ 的不同版本。
这就是您的代码无法正常工作的原因

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-20
    • 1970-01-01
    • 2011-07-18
    相关资源
    最近更新 更多