如何在开关语句中实现“ ENTER”案例

用户名

我正在一个班级项目中,我必须为C ++中的咖啡店创建一个订购系统。如果适用,我正在Visual Studio中工作。

在项目大纲中,老师说有一个简单的整数输入可以浏览菜单。但是,他指定如果输入了NOTHING(假设我已经看到所谓的“热输入”),它将计算收据并重置程序。

我尝试了cin.get()并检查缓冲区是否为'\ n',并且工作正常,但是我当前的实现似乎只能捕获一个热输入,并且无法进入切换情况。

为了从用户那里获取输入,我目前已经尝试了以下方法:

        // Get menu input
        if (cin.get() == '\n') {    // Check if user hot entered, assign value if so
            input = 0; 
        } else {                    // If not, do it normally
            input = cin.get();
        }

但是,这不太正确,并且无法捕获输入的整数以用于切换情况。我不确定在推理中这种实现是否合理,或者是否有更简单的途径来进行热输入。

我没有收到任何错误,所以我想我对这些功能的工作方式有误,或者我的实现在逻辑上存在缺陷。

谢谢。

法哈德·拉曼尼法德

您使用了cin.get()两次。第二cin.get()input = cin.get();是多余的。

// Get menu input
    input = cin.get();
    if (input == '\n') {    // Check if user hot entered, assign value if so
        input = 0; 
    } 
//else {      // If not, do it normally
//         input = cin.get();
//     }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章