C++ 如何在Visual Studio 2013 C+中防止输出屏幕消失+;编译程序

C++ 如何在Visual Studio 2013 C+中防止输出屏幕消失+;编译程序,c++,c,visual-studio,C++,C,Visual Studio,我刚刚下载了Visual Studio 2013。当我编译C时,它不会显示我的输出。输出屏幕将显示一秒钟,然后消失 #include <stdio.h> int main() { printf("hi"); return 0; } #包括 int main() { printf(“hi”); 返回0; } “程序“[5688]Project1.exe”已退出,代码为0(0x0)。” 我知道我的代码可以正常工作和运行,只是我不能让输出屏幕在一秒钟后不退出就保持打开

我刚刚下载了Visual Studio 2013。当我编译C时,它不会显示我的输出。输出屏幕将显示一秒钟,然后消失

#include <stdio.h>

int main()
{
    printf("hi");
    return 0;
}
#包括
int main()
{
printf(“hi”);
返回0;
}
“程序“[5688]Project1.exe”已退出,代码为0(0x0)。”
我知道我的代码可以正常工作和运行,只是我不能让输出屏幕在一秒钟后不退出就保持打开状态

在返回0之前添加此代码

int  num;
scanf ("%d",&num);


您可以做几件事(我假设您使用的是Windows):

  • 使用Visual Studio命令提示符编译并执行程序
  • 添加
    getchar()操作
  • 添加
    系统(“暂停”)操作

  • 您可以在调试模式和发布模式下运行应用程序。通常
    Ctrl+F5
    将在不使用调试器的情况下运行应用程序。而
    F5
    只运行应用程序

    如果执行了
    Ctrl+F5
    (“启动而不调试”),控制台将在结束时保持打开状态,并要求您按
    任何键继续在这里可以看到输出


    如果您只是在使用
    F5
    ,则处于调试模式。在末尾添加,
    getchar()
    函数,然后返回0
    因此控制台将等待您按任意键…

    除了前面提到的之外,另一个选项是进入项目的属性,并将
    链接器
    选项中
    系统
    部分中的
    子系统
    更改为
    控制台(/Subsystem:console)
    。然后,当您使用
    ctrl+f5
    (调试/启动而不调试)运行程序时,控制台窗口将保持不变


    .

    我刚刚在
    返回0
    语句上放了一个断点(F9键)。只能在调试模式下工作,但这正是您想要的。如果直接从命令行运行该程序,它已经按预期工作。

    我使用Visual Studio 2013 for Python,我也在努力解决这个问题。我的解决方案是按
    F5
    而不是按
    Ctrl+F5
    ,然后我将有两个弹出窗口(控制台和程序输出)


    我关闭控制台窗口,另一个窗口将一起关闭

    我首先使用了metioned getchar()和断点解决方案,但如果您希望程序结束(例如,如果您使用的是内存泄漏检测器),这是不好的。我通过将输出重定向到一个文件来克服这个问题。您可以通过在项目属性的调试部分下的命令行选项中插入
    >output.txt
    来实现这一点
    #include <stdlib.h>
    #include <stdio.h>
    int main()
    {
      printf("hello world");
      system("pause"); //this pauses the program until you press any key 
      return 0;
    }
    
    #包括 int main() { printf(“你好世界”); system(“pause”);//这会暂停程序,直到您按任意键为止 返回0; }
    输出将是:

    你好,世界


    按任意键继续…

    要防止屏幕关闭,可以在Visual studio中使用getchar(),如下所示:

    #include "stdafx.h"
    #include <stdio.h>
    #include <iostream>
    using namespace std;
    
    
    int main()
    {
        cout << "Hello\n";
        getchar();
    
    }
    
    #包括“stdafx.h”
    #包括
    #包括
    使用名称空间std;
    int main()
    {
    
    cout您也可以按住CTRL+F5使窗口保持打开状态。

    在命令行中运行.exe,或添加系统(“暂停”)在程序结束时,如果你只需点击EXE,这也会发生。因为Windows在程序退出后立即关闭命令行,只需添加一个暂停命令。你的标题标题显示C++和tag是C…@ NISHIthjayNMR:尽管名字,微软Visual C++包含C编译器。它已经严重过时(19年)。但对于这样一个简单的程序来说,这仍然足够了。可能重复使用(;)
    而在代码末尾使用(1){;}
    。我厌倦了使用ctrl+F5,但它也只是在不到一秒的时间内闪烁输出,然后消失。我也尝试过使用getchar(),但它也不起作用。int main(){printf(“hi”);getchar();return 0;}您在哪里添加getchar();?您必须在返回0之前添加;谢谢各位,我得到了它。我不小心将它放在了返回0之后。如何设置此默认选项?
    #include "stdafx.h"
    #include <stdio.h>
    #include <iostream>
    using namespace std;
    
    
    int main()
    {
        cout << "Hello\n";
        getchar();
    
    }