c++ - C++ Switch 语句在第一次尝试后跳到默认选项
问题描述
我正在使用开关盒制作菜单。我试过运行程序,菜单似乎工作,但我不知道我什么时候尝试返回菜单,它不会读取其他情况。在第一次尝试中它可以工作,但之后它不会进入其他情况,然后它会跳到默认值。
这是我的代码:
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
#include <stdlib.h>
#include <cmath>
#include <iomanip>
#include <string.h>
int path = 0;
std::string search, line, productName, iprice, quantity, productType, again = "y";
using namespace std;
std::ifstream ReferenceList;
std::ofstream Sales;
void menu();
void priceSearch();
void recordSales();
void addItem();
int main() {
char option = 'y';
do {
system("CLS");
menu();
system("CLS");
switch (path) {
case 1:
priceSearch();
break;
case 2:
recordSales();
break;
case 3:
addItem();
break;
default:
cout << "Please Only Enter: {1 2 3}";
break;
}
cout << "\nGo back to Main Menu? Press Y to Continue: ";
cin >> option;
} while (option == 'y' || option == 'Y');
}
这是无效菜单()的代码
void menu() {
std::cout << "TINDAHAN ALL IN ONE PURPOSE PROGRAM\n";
std::cout << "Functions:\n";
std::cout << "Press 1 to Find Price List\n";
std::cout << "Press 2 to Record Sales\n";
std::cout << "Press 3 to Add New Product\n";
std::cin >> path;
}
解决方案
推荐阅读
- c# - Cloudwatch 使用 Nlog 从 Lambda 进行日志记录,创建只读文件系统 Exceptionns
- angular - 如何在 ngx-bootstrap datepicker 上更改月份时触发事件?
- c# - Blazor 服务器端:订阅事件
- mongodb - 我如何将对象推送到 mongodb 中的这个嵌套文件
- python - Seaborn:绘制两个条形图和两个折线图
- python - 如何在保持出现顺序相同的情况下获得熊猫系列的独特价值
- apache-spark - Spark 在尝试从 Oracle 表读取数据并将数据写入 HDFS 时仅运行一个执行程序
- openssl - 来自 PRIVATE KEY 的 Genearte ENCRYPTED PRIVATE KEY
- haskell - 在 Windows 上安装 hsdev 以使用 SublimeHaskell 和 SublimeText 时遇到问题
- python-3.x - Python打印每一种可能性的setences