C++保存中文字符串到vector中
时间: 2023-02-09 13:46:23 浏览: 178
可以使用 C++ STL 的 vector 来存储 C 的中文字符串。
示例代码:
```C++
#include <vector>
#include <string>
int main() {
char str[] = "这是一个中文字符串";
std::vector<char> vec(str, str + sizeof(str));
return 0;
}
```
或者使用 string :
```C++
#include <vector>
#include <string>
int main() {
std::string str = "这是一个中文字符串";
std::vector<char> vec(str.begin(), str.end());
return 0;
}
```
如果你想要用 vector<string> 存储多个字符串,可以这样:
```C++
#include <vector>
#include <string>
int main() {
std::vector<std::string> vec;
vec.push_back("这是第一个字符串");
vec.push_back("这是第二个字符串");
vec.push_back("这是第三个字符串");
return 0;
}
```
相关问题
c++定义字符串的vector容器
在 C++ 中,可以使用 `std::vector` 容器来存储字符串。要定义一个存储字符串的 `vector`,可以使用以下代码:
```c++
#include <vector>
#include <string>
std::vector<std::string> str_vec;
```
这将定义一个名为 `str_vec` 的 `vector`,其中每个元素都是一个 `std::string` 类型的字符串。现在可以向 `str_vec` 中添加字符串,例如:
```c++
str_vec.push_back("Hello");
str_vec.push_back("world");
```
这将向 `str_vec` 中添加两个字符串 "Hello" 和 "world"。要访问 `vector` 中的字符串,可以使用下标运算符 `[]`,例如:
```c++
std::string first_str = str_vec[0]; // first_str = "Hello"
std::string second_str = str_vec[1]; // second_str = "world"
```
当然,还有许多其他的操作可以对 `vector` 进行,例如删除、插入等等。详情请参考 C++ 的 `std::vector` 文档。
C++读取txt文件,并将中文字符串保存到vector<char>中
可以使用C语言的文件操作函数fopen()、fread()、fclose()来读取txt文件,并使用STL中的vector<char>来保存读取的中文字符串。
示例代码如下:
```
#include <stdio.h>
#include <vector>
using namespace std;
int main() {
// 打开文件
FILE* fp = fopen("文件路径", "r");
if(fp == NULL) {
printf("文件打开失败!\n");
return -1;
}
// 定义存储字符串的vector
vector<char> v;
// 读取文件中的字符串
char c;
while((c = fgetc(fp)) != EOF) {
v.push_back(c);
}
// 关闭文件
fclose(fp);
// 遍历输出vector中存储的字符串
for(auto i : v) {
printf("%c", i);
}
return 0;
}
```
阅读全文