我是C ++的初学者,我试图编写一个程序来查找两个数字的平均值,但是当我运行程序时,窗口消失而不允许我看到结果。有人可以帮帮我吗? 感谢
#include <iostream>
using namespace std;
int main()
{
int number1,number2,answer;
cout << "number1? ";
cin >> number1;
cout << "number2? ";
cin >> number2;
answer = (number1 + number2)/2;
cout << answer<<endl;
return 0;
}
答案 0 :(得分:5)
解决方案#0(正确):
从shell运行程序(cmd.exe
,bash
)
解决方案#1(正确):
从正统的文件管理器运行程序。远程经理或午夜指挥官。
解决方案#2(替代方案);
将输出重定向到文件。来自命令行的program.exe >file.txt
。
解决方案#3(不当):
启动消息框,使用“睡眠”/“睡眠”来延迟程序终止。
解决方案#4(不当):
在程序结束时请求用户输入。
解决方案#5(不当):
在“返回0”上设置断点,调试程序。
解决方案#6(windows + msvc):
使用调试版本通过Ctrl + F5从msvc启动程序。你会得到“按键继续”提示。
答案 1 :(得分:3)
在return
语句中加上断点。它不会停留在未捕获的异常上,但可以通过try
最外部的catch
/ main
块来修复。
答案 2 :(得分:1)
包含此标题:
#include <stdio.h>
在getchar()
之前添加对return
的电话:
cout << answer<<endl;
getchar(); // wait for user input
return 0;
答案 3 :(得分:1)
返回之前添加系统(“PAUSE”);这应该可以解决你的问题。
答案 4 :(得分:1)
如果您使用的是Visual Studio,请按CTRL + F5运行。为控制台应用程序插入“Hit RETURN to continue”。
答案 5 :(得分:1)
SigTerm的解决方案#6(上图)无法保证正常工作。在Visual Studio中,您应右键单击您的项目并选择:
属性|配置属性|链接器|系统|子系统
并在下拉列表中选择控制台(/ SUBSYSTEM:CONSOLE)。
答案 6 :(得分:0)
我一直很讨厌......我总是在你回来之前找到最简单的system("pause");
,但这不是一个可移植的解决方案(但是cin.get)。还有许多其他方法,其中一些在下面的链接中提到。
编辑:system("pause");
是可怕的,永远不应该使用,并且可能会或可能不会像我们所知的那样结束这个星球上的生命,即使是在一个名为“你好”的项目中的初学者。使用system("pause")
是昂贵且危险的,如果你使用它,你永远不会再见到你爱的人。不要这样做。使用cin.get
或其他内容。