C++如何把一个串英语短句里的每个单词放至字符串数组中
时间: 2024-10-11 22:17:52 浏览: 42
在C++中,将一个英文短句拆分成单个单词并存入字符串数组可以使用`std::istringstream`和循环结构。以下是一个简单的步骤:
1. 首先,创建一个空的字符串数组,用于存储单词。
2. 定义一个`std::istringstream`对象,传入英文短句作为输入流。
3. 使用循环遍历输入流,通过`getline()`函数逐行读取,并用`std::string::find_first_of(" \t\n")`查找单词分隔符(空格、制表符或换行符)来分割单词。
4. 对于每个单词,检查它是否为空(即不是分隔符),然后将其添加到数组中。
```cpp
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
void splitSentenceIntoWords(const string& sentence, vector<string>& words) {
stringstream ss(sentence);
string word;
while (getline(ss, word, ' ')) { // 分割以空格为单位
if (!word.empty()) { // 空白词忽略
words.push_back(word);
}
}
}
int main() {
string sentence = "Hello, how are you today?";
vector<string> wordArray;
splitSentenceIntoWords(sentence, wordArray);
for (const auto& word : wordArray) {
cout << word << " ";
}
return 0;
}
阅读全文