用new 开辟的可以直接指向字符串常量,但是之后就不能进行修改了比如
char * f=new char[4];
f="ab";
f[0]='0'//错误
但是可以输出f[0];
应该f[0]='a';
f[1]='b';
f[2]=' ';//要指定' ',不然会出现乱码,因为指向的内存剩下的未知
或者使用strcpy_s进行赋值,strcpy只
string g="acv";
strcpy_s(f,4,g.c_str());
或则
char * p="ad";
strcpy(f,p);