📅  最后修改于: 2023-12-03 14:52:40.996000             🧑  作者: Mango
在C++中,输入一个逗号分隔的字符串有多种方法。以下是其中两种常用方法的介绍:
我们可以使用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;
}
该程序将逗号分隔的字符串分隔成多个字符串,并逐一输出每个分隔后的字符串。
另一种方法是使用**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;
}
该程序同样将逗号分隔的字符串分隔成多个字符串,并逐一输出每个分隔后的字符串。
以上就是两种常用方法介绍。