如何在C++中使用定长方式分割字符串?
时间: 2024-12-15 07:20:10 浏览: 16
在C++中,可以使用`std::string`的内置方法`substr()`以及迭代器来按指定长度分隔字符串。下面是一个简单的例子:
```cpp
#include <iostream>
#include <string>
// 定义一个函数来分隔字符串
std::vector<std::string> splitString(const std::string& input, size_t length) {
std::vector<std::string> result;
if (input.empty()) return result;
// 使用substr()获取每个子串,每次移动length个字符
for (size_t i = 0; i <= input.length(); i += length) {
// 如果子串超出范围,则跳过
if (i + length > input.length()) break;
// 添加到结果向量中
result.push_back(input.substr(i, length));
}
return result;
}
int main() {
std::string str = "Hello, World! This is a test.";
size_t length = 5; // 每次分割的长度
std::vector<std::string> substrings = splitString(str, length);
for (const auto& sub : substrings) {
std::cout << sub << std::endl;
}
return 0;
}
```
在这个例子中,`splitString`函数会返回一个包含原始字符串按照给定长度划分成的小字符串的`std::vector`。
阅读全文