char*类型与vector<char> 类型的相互转换
很多时候需要使用动态的字符串,但是char*难以完成相应的扩容操作,而动态数组vector则可以简单地完成,结合二者特性就可以完成动态字符串,同时,也需要二者类型的相互转换:
- char* 转vector<char>
- vector<char> buffer(ch, ch+4);
- vector<char> 转char*
- char *s = &buffer[0];
#include "iostream"
#include "vector"
using namespace std;
void printVector(vector<char> v){
for (vector<char>::iterator iter = v.begin(); iter != v.end(); iter++){
cout << *iter;
}
cout << endl;
}
int main(){
char * ch = "1234";
// char * 类型转换为 vector<char> 类型
vector<char> buffer(ch, ch+4);
cout << "vector :";
printVector(buffer);
// vector<char> 类型转换为 char* 类型
char *s = &buffer[0];
cout << "char * :" << s << endl;;
system("pause");
return 0;
}
标签:ch,cout,buffer,C++,char,vector,类型 From: https://www.cnblogs.com/1873cy/p/18348928