c++ - 如何将用户输入拆分为字符和整数?
问题描述
我正在做一个项目,我必须从用户输入中解析数据。
#include <iostream> // for cin and cout
#include <iomanip> // for setw()
#include <cctype> // for toupper()
using namespace std;
int main(){
string playerInput;
cin >> playerInput;
//Player would input strings like C13,C 6, I1, Z 16, etc...
}
return 0;
我尝试过这样的事情,这有点工作,但前提是字母继续字符串中的数字。
int myNr = std::stoi(playerInput);
我的最终目标是从字符串中获取字母和数字,并将它们分别放在一个 char 变量和一个整数变量中。我被困在如何从这里开始并且可以使用一些帮助,谢谢!
解决方案
这是实现这一目标的最简单和最短的方法(它也忽略空格和制表符):
int main() {
char ch;
int n;
cin >> ch >> n;
cout << "ch = " << ch << ", n = " << n << endl;
}
我认为其他答案有点过于复杂。
推荐阅读
- matlab - 在 MATLAB 中从 .mat 文件访问稀疏矩阵
- typeorm - 连接 TypeORM 的实体声明
- python - 如何将 Systemd 用于 Django-q 守护进程
- php - 如何在 PHP 中增加 PHP-AI 中的功能数量?
- r - CRAN 检查:'\R' 是从 "'D:\temp\R" 开始的字符串中无法识别的转义
- python - python中的日期时间导入csv
- f# - WebSharper:Rpc 返回的对象在客户端上不可用或导致错误
- embedded - MCU SPI 在主模式下启用软件从管理,从是第三方 zigbee 设备,它希望其 nSSL 由外部驱动
- python - 如何为输出中的数据创建列?
- json - JSON.parse() 为局部变量和全局变量返回不同的值