gpt4 book ai didi

c++ - 如何将 "ENTER"case 实现到 switch 语句中

转载 作者:行者123 更新时间:2023-11-30 03:13:27 26 4
gpt4 key购买 nike

我正在做一个类(class)项目,我必须用 C++ 为一家咖啡店创建一个订购系统。如果适用,我正在 Visual Studio 中工作。

在项目大纲中,老师说有一个简单的整数输入来导航菜单;但是,他指定如果没有输入任何内容(我假设我所看到的称为“热输入”),它会计算收据并重置程序。

我试过 cin.get() 并检查缓冲区是否为 '\n',这工作正常,但我当前的实现似乎只能捕获热输入,并且无法进入 switch case .

为了从用户那里获得输入,我目前已经尝试过这个:

        // 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();
}

然而,这并不能很好地工作,并且无法捕获输入的整数以用于 switch case。我不确定这种实现在推理上是否合理,或者是否有更简单的方法来支持热输入。

我没有收到任何错误,所以我想我对这些函数如何工作的理解有问题,或者我的实现在逻辑上有缺陷。

谢谢。

最佳答案

您使用了两次 cin.get()input = cin.get(); 中的第二个 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();
// }

关于c++ - 如何将 "ENTER"case 实现到 switch 语句中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58700258/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com