你可以使用C++标准库中的<sstream>
和<string>
头文件来实现字符串分割功能。下面是一个简单的示例代码:
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
std::vector<std::string> split(const std::string& str, char delim) {
std::istringstream iss(str);
std::string token;
std::vector<std::string> tokens;
while (std::getline(iss, token, delim)) {
tokens.push_back(token);
}
return tokens;
}
int main() {
std::string str = "C++ is a powerful programming language.";
char delim = ' ';
std::vector<std::string> tokens = split(str, delim);
for (const auto& token : tokens) {
std::cout << token << std::endl;
}
return 0;
}
在上面的代码中,我们定义了一个split
函数,它接受一个字符串和一个分隔符作为参数。该函数使用std::istringstream
类从输入字符串中读取数据,并使用std::getline
函数按分隔符将字符串分割为多个子字符串。最后,这些子字符串被存储在一个std::vector<std::string>
对象中并返回。
在main
函数中,我们调用split
函数来分割一个示例字符串,并将结果打印到控制台上。