输入字符串到vector<string>中
时间: 2023-04-05 22:04:48 浏览: 201
可以回答这个问题。您可以使用以下代码将字符串输入到vector<string>中:
```
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main() {
vector<string> strVec;
string inputStr;
while (cin >> inputStr) {
strVec.push_back(inputStr);
}
return 0;
}
```
这个程序会不断读取输入,直到遇到文件结尾或者输入流被关闭。每次读取到一个字符串,就将其添加到vector<string>中。
相关问题
vector<vector<string>>和vector<string>的使用方法和区别
vector<vector<string>>是一个二维向量,可以用来存储多个字符串向量,每个字符串向量可以有不同的长度。而vector<string>是一个一维向量,只能存储一个字符串向量。使用方法上,二维向量需要使用两个for循环来遍历每个字符串向量中的元素,而一维向量只需要一个for循环即可。区别在于,二维向量可以表示更加复杂的数据结构,而一维向量只能表示简单的数据结构。
vector<vector<string>> a怎么向数组中插入字符串
`vector<vector<string>> a` 表示一个名为 `a` 的二维字符串数组,你可以使用以下方法向其中插入字符串:
1. 使用 `push_back` 函数将字符串添加到二维数组的末尾:
```c++
a.push_back(vector<string>{"hello", "world"});
a.push_back(vector<string>{"foo", "bar", "baz"});
```
2. 使用下标运算符 `[]` 直接将字符串插入到指定位置:
```c++
a[0].push_back("hello");
a[0].push_back("world");
a[1].push_back("foo");
a[1].push_back("bar");
a[1].push_back("baz");
```
3. 使用 `insert` 函数将字符串插入到指定位置:
```c++
a.insert(a.begin(), vector<string>{"hello", "world"});
a.insert(a.begin() + 1, vector<string>{"foo", "bar", "baz"});
a[0].insert(a[0].begin(), "hello");
a[0].insert(a[0].begin() + 1, "world");
a[1].insert(a[1].begin(), "foo");
a[1].insert(a[1].begin() + 1, "bar");
a[1].insert(a[1].begin() + 2, "baz");
```
以上三种方法都可以向 `vector<vector<string>> a` 中插入字符串。注意在使用 `insert` 函数时,需要将字符串包装成一个单独的 `vector<string>` 对象。
阅读全文