为什么我的hello world程序不能用c ++工作?

时间:2013-10-17 01:14:05

标签: c++

#include <iostream>

int man(){
cout << "Hello world";
}

由于某种原因,这根本不起作用

4 个答案:

答案 0 :(得分:5)

您需要int main,而不是int man

#include <iostream.h>

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

答案 1 :(得分:3)

您将int man(){放在应该int main(){

的位置

答案 2 :(得分:1)

错字。改变&#34; man&#34;到&#34;主要&#34;。此外,最后返回0可能还不错。

答案 3 :(得分:0)

您需要添加一些内容,以便程序按照您的意图运行。

这条线     #包括 告诉编译器您希望在程序中包含IOStream库头的内容。这个标题提供了“cout”,“&lt;&lt;”以及许多其他输入/输出功能。但是,令牌“cout”和“&lt;&lt;”存在于“std”命名空间中。这意味着如果你不使用“std :: cout”,编译器就不知道你要使用哪个 cout,所以它会混淆。

该部分的解决方案是添加“using namespace std;”这一行。在#include行下面。这告诉编译器上面的标题应该自动使用“std”命名空间。这有点像自动将“std ::”放在库中包含的所有标记之前。这可能不是所有编译器的致命错误(刚刚在GCC上测试它并没有给我一个错误......),但是你可能会因为未来没有指定命名空间而遇到错误。

第二个问题是主要功能需要被称为main。程序运行时,它通过启动'main'函数运行,并在'main'返回时结束。但是,如果没有名为“main”的函数,则程序没有入口点,也无法运行。这可能只是一个错字,但它仍然会混淆编译器。

接下来,为了使输出变得漂亮,你可能想在'cout'语句的末尾添加“\ n”或“endl”,以便在字符串后打印换行符“你好,世界”。严格来说,这不会阻止程序编译或运行,但最好习惯用换行符来结束输出。

最后,正如Christian Ternus已经指出的那样,因为main()被声明为一个int,所以它必须有一个返回值。将函数(如main)声明为int表示函数在被调用时,在数学上求值为整数。在main()的上下文中,主要返回的值是程序终止时的返回值。通常,main返回0表示没有失败。

这是你的完成版本:

#include <iostream>
using namespace std;

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