怎么做才能看到" cout"的输出命令?

时间:2015-12-04 13:39:26

标签: c++ output cout

我从C ++(Visual Studio 2015和Windows 8.1)开始,使用这个简单的代码:

#include <iostream>

using namespace std;

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

但是,输出屏幕什么也没显示!我该怎么办?

提前致谢。

5 个答案:

答案 0 :(得分:3)

在Visual Studio中,使用Ctrl-F5启动程序,它将自动运行并暂停。无需其他代码。

答案 1 :(得分:1)

你的代码非常好,但程序目前只能打印和退出,因为这可能发生得非常快,你可能无法看到它,试着暂停它:

#include <iostream>

using namespace std;

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

另外,请确保您的防病毒软件没有阻止Visual Studio。

答案 2 :(得分:1)

您的代码很好,但是,如果您将其作为cmd程序执行,程序窗口将立即关闭,您甚至可能无法看到输出。您可以通过“暂停”程序来编写额外的代码来解决此问题:

#include <iostream>
#include <windows.h>
using namespace std;

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

如果你不喜欢每次输入时都包含一个windows.h文件,你可以添加一个“cin.get();”在代码的最后。但说实话,既然你只是一个初学者,我认为你应该尝试的最酷的方式,不是使用Visual Studio来学习C / C ++,而是安装CodeBlocks(一个简单但有效的IDE)来编写一些不是太长。你知道,VS适用于庞大而复杂的项目和一些实用的程序开发。

答案 3 :(得分:0)

另一种解决方案,依赖于平台。我的答案是那些只需要测试暂停以进行调试的人。不建议发布解决方案!

#include <iostream>

int main()
{
    std::cout << "Hello world" << endl;
    system("pause");
    return 0;
}

linux(and many alternatives

#include <iostream>

int main()
{
    std::cout << "Hello world" << endl;
    system("read -rsp $'Press enter to continue...\n'");
    return 0;
}

检测paltform

我曾经在编写家庭作业时这样做,确保这只发生在Windows上:

#include <iostream>
int main()
{
    std::cout << "Hello world" << endl;
    #ifdef _WIN32
        system("pause");
    return 0;
}

这是ifdef宏和操作系统的良好备忘单:http://sourceforge.net/p/predef/wiki/OperatingSystems/

答案 4 :(得分:0)

程序退出return 0;并关闭窗口。在此之前,您必须暂停该程序。例如,您可以等待输入。

以下是我的代码中执行此操作的代码段。它适用于Windows和Linux。

#include <iostream>

using std::cout;
using std::cin;

// Clear and pause methods
#ifdef _WIN32
// For windows
void waitForAnyKey() {
    system("pause");
}

#elif __linux__
// For linux
void waitForAnyKey() {
    cout << "Press any key to continue...";
    system("read -s -N 1"); // Continues when pressed a key like windows
}

#endif

int main() {
    cout << "Hello World!\n";
    waitForAnyKey();
    return 0;
}