c++ - 如果用户输入 "q",程序退出

标签 c++

我有这个 C++ 代码,我正在尝试执行以下操作:

提示用户输入“p”播放或“q”退出,如果用户输入任何“p”程序将继续,如果用户输入“q”程序将终止,如果他们输入无效输入,它也会终止。我该怎么做?

谢谢,

代码如下:

#include <iostream>
#include <cstdio>
#include <cmath>

using namespace std;

int Umain = 0;
double Atemp = 0;
double Utemp = 0;
double Working = 0;
double Total = 0;
char Answer = 'x';

void displayOverview ();

void playOrQuit();    

void promptNumber();

int main(){

    displayOverview();

    playOrQuit();

    promptNumber();

    return 0;
}

void displayOverview(){


}

void playOrQuit(){

    string playOrNot;

    cout << "If you want to play please press 'p' for play, and 'q' if you wish to quit\n";
    cin >> playOrNot;

    if(playOrNot == "p"){
        cout << "Awesome, lets start playing !!! \n";

    }if(playOrNot == "q"){
        cout << "Alright then, see you soon !!\n";

    }
}


void promptNumber(){

    do{
    cout << "Please Enter numbers between 1 and 12: ";
    cin >> Umain;
    cout << "\n";
        for (Utemp = Umain; Utemp > 0; Utemp--)
        {
            cout << "Please enter a number: ";
            cin >> Atemp;
            Working = (Working + Atemp);
        }
    }while (Answer == 'y');
}

最佳答案

只需在检测到“q”被按下后添加对 exit 的调用:

}if(playOrNot == "q"){
    cout << "Alright then, see you soon !!\n";
    exit(0); // <=== Add this here

传统上以 0 退出意味着程序以预期的方式退出并且没有任何错误。

关于c++ - 如果用户输入 "q",程序退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53402554/

相关文章:

用于级联继承的 C++ 可变参数模板。如何向上转换?

c++ - 多个文件中的常量定义

c++ - 创建一个向主窗体返回值的模态窗口

c++ - 跨平台 C++ 目录管理

c++ - 如何在没有 push_back 的情况下将 std::transform 与容器一起使用?

C++ 协程/Visual Studio : How can a generator call a function that yields values on its behalf?

c++ - Natvis FourCC 可视化语法

c++ - 使用 static_cast<Base>(*this) 初始化可变参数 CRTP...: is it legal ?

c++ - 如何从 CFont 对象获取自动计算的字体宽度?

c++ - 是什么减慢了键上对的排序?