c++ - 从 char 数组打印特定字符
问题描述
我正在开发这个程序,用户将输入“S”或“Sell”,程序在 char 数组中查找那些 cstring 值,如果找到将返回从第一个 '\n' 和最后一个 ' 开始的菜单选项\n'。所以输入“S”或“Se”将返回“2. Sell”。这就是我坚持的地方。
更新!现在只是想看看我是否可以拉入那个'#。' 何时选择解决方案?(如果可能的话)
#include "pch.h"
#include <iostream>
#include <cstring>
using namespace std;
void promptForInput(char list[]) {
char *strPtr = nullptr;
const int ANSW = 10;
char line[ANSW];
int num = 0;
cout << "Enter an option: ";
cin.getline(line, ANSW);
strPtr = strstr(list, line);
while (strPtr[num] != '\n' && strPtr[num] != '\0')
{
cout << strPtr[num];
num++;
}
}
int main()
{
int count = 0;
char menu[] = "1. Buy\n2. Sell\n3. Convert\nX. Exit\n";
while (menu[count]){
cout << menu[count];
count++;
}
promptForInput(menu);
}
解决方案
推荐阅读
- airflow - 气流:为什么我的 DAG 没有在预期的日期运行
- javascript - 访问浏览器扩展弹出窗口的内容
- c++ - 使用循环的直方图;
- javascript - 在 mongoose *after* 查询 objectId 后更新子文档数组
- python - 对温度值和降水值的降水类型进行分类(python数据框)
- graph - 如何在 Neo4j 中根据日期顺序创建关系
- swift - 如何使用 UIKit 在 uitextview/nstext 视图中缩进文本?
- javascript - 如何使用 iOS/Safari 上的 JavaScript Web Audio API 从输入插孔获取音频?
- azure - 虚拟机诊断设置 Rest API
- python - 如何根据非重复的列标题附加到重复的列标题?