C ++代码在cmd提示符前打印

时间:2017-10-24 03:25:49

标签: c++ ubuntu

我试图学习如何开始学习在Ubuntu上进行C ++编码。 我创建了一个名为text.cpp的文件,其中包含以下内容:

#include <stdio.h>
int main ()
{
printf("Hello World!");
}

我使用以下行编译它:

gcc test.c -o mytest

然而,当我运行./mytest字符串&#34; Hello World!&#34;像这样出现在命令提示符前面。

Hello World!mbishop@ubuntu:~bin$

为什么会发生这种情况,如何在命令提示符后打印它。例如,就像你键入echo&#34; Hello Wolrd!&#34;。

2 个答案:

答案 0 :(得分:1)

您可以在Hello World!之后添加换行符,如下所示:

printf("Hello World!\n");

修改

您也可以使用puts

puts("Hello World");

因为你问为什么,这只是因为printf在没有添加新行的情况下将输出写入stdout。如果使用puts,它将写入输出并默认添加换行符。因此,puts()将光标移动到下一行。

答案 1 :(得分:0)

问题是缺少换行符。

您可以使用printfputs。但是,stdio.h是一个C头,而不是惯用的C ++。见this answer。如果您的目标是以良好的C ++风格编写代码,则以下内容会更合适。

#include<iostream>

int main() {
    std::cout << "Hello World!" << std::endl;
}