如果字符串中没有空格,如何用数字和字符解析字符串并分隔数字和字符?

时间:2015-03-12 21:33:06

标签: c++ parsing ifstream strtok

我有一个字符串

123test

如何将123分开测试并存储在两个变量中?

2 个答案:

答案 0 :(得分:0)

使用sscanf,例如:

char str[] = "123test";
char str2[10];
int i;

sscanf(str, "%d%s", &i, str2);

答案 1 :(得分:0)

使用C ++提供的工具:字符串和流。

#include <iostream>
#include <string>
#include <sstream>

int main()
{
    int num;
    std::string str;

    std::istringstream ss{"123test"};
    ss >> num >> str;

    std::cout << "num = " << num << std::endl;
    std::cout << "str = " << str << std::endl;

    return 0;
}

Link to demo