👀1. 调用 string 的 data 函数
**
string str="abc";
char *p=str.data();
👀2.调用 string 的 c_str 函数
注意
- c_str 是标准的做法,返回的 char 一定指向一个合法的用 ‘\0’ 终止的*C兼容的字符串。
- 需要C兼容的字符串,c_str 是标准的做法,data 并不保证所有STL的实现的一致性。
string str="gdfd";
char *p=str.c_str();
👀3 调用 string 的 copy 函数
形式:**str.copy(p,5,0);
注意
- 是将str的内容拷贝给p,顺序不能记反
- 参数 5 的意思是将str的5个字符拷贝
- 参数 0 的意思是从str的0下标开始拷贝
string str="hello";
char p[40];
str.copy(p,5,0); //这里5,代表复制几个字符,0代表复制的起始位置
*(p+5)='/0'; //要手动加上结束符
cout <<p;