#include <bits/stdc++.h>
using namespace std;
int main(void)
{
/*
C++ 字符串转话字符数组
s.c_str():
此方法生成的字符数组是临时的指针,指向的内容容易失效
当有一个改变这些数据的成员函数被调用后,其中的数据就会失效
使用时应该先转换,把它的数据复制到用户自己可以管理的内存中。
因此使用strcpy();
copy(p,n,size_type _Off = 0):
1 从string类型对象中至多复制n个字符到字符指针p指向的空间中。
2 默认从首字符开始,但是也可以指定,开始的位置(记住从0开始)。返回真正从对象中复制的字符。------用户要确保p指向的空间足够保存n个字符。
3 __s –将值复制到的C字符串。
__n –要复制的字符数。
__pos –要复制的第一个字符的索引。
*/
char *c = new char[20];
char *c2 = new char[20];
string s = "hello";
// c = s.c_str();
// cout << c << endl;
// s = "world";
// cout << c << endl;
// strcpy(c, s.c_str());
cout << c << endl;
// s.copy(c, 0, 2);
// s.copy(c, 2, 2);
s.copy(c, 2, 1);
s.copy(c2, 0, 2);
cout << c << " " << c2;
system("pause");
return 0;
}