📌  相关文章
📜  如何在C++中输入逗号分隔的字符串?(1)

📅  最后修改于: 2023-12-03 14:52:40.996000             🧑  作者: Mango

如何在C++中输入逗号分隔的字符串?

在C++中,输入一个逗号分隔的字符串有多种方法。以下是其中两种常用方法的介绍:

方法1:使用getline()和stringstream类

我们可以使用getline()函数和stringstream类来读取逗号分隔的字符串。 getline()可以读取一行字符串,而stringstream可以将一行字符串按照指定的分隔符分隔成多个字符串。

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

using namespace std;

int main() {
    string input; // 存储输入的字符串
    getline(cin, input); // 获取一行输入

    stringstream ss(input); // 将输入的字符串转化为 stringstream
    string token; // 存储分隔后的字符串
    while(getline(ss, token, ',')) {
        cout << token << endl; // 输出分隔后的字符串
    }
    return 0;
}

该程序将逗号分隔的字符串分隔成多个字符串,并逐一输出每个分隔后的字符串。

方法2:使用strtok()函数

另一种方法是使用**strtok()**函数。该函数可以将字符串按照指定的分隔符分隔成多个字符串。在使用该函数之前,我们需要引入头文件

#include <iostream>
#include <cstring>

using namespace std;

int main() {
    string input; // 存储输入的字符串
    getline(cin, input); // 获取一行输入

    char *token = strtok(&input[0], ","); // 将字符串分隔成多个字符串
    while (token != NULL) {
        cout << token << endl; // 输出分隔后的字符串
        token = strtok(NULL, ","); // 将字符串分隔成多个字符串
    }
    return 0;
}

该程序同样将逗号分隔的字符串分隔成多个字符串,并逐一输出每个分隔后的字符串。

以上就是两种常用方法介绍。