首页 > 解决方案 > 如何将用户输入拆分为字符和整数?

问题描述

我正在做一个项目,我必须从用户输入中解析数据。

#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 变量和一个整数变量中。我被困在如何从这里开始并且可以使用一些帮助,谢谢!

标签: c++

解决方案


这是实现这一目标的最简单和最短的方法(它也忽略空格和制表符):

int main() {
    char ch;
    int n;
    cin >> ch >> n;

    cout << "ch = " << ch << ", n = " << n << endl;
}

我认为其他答案有点过于复杂。


推荐阅读