string str = "string";char * ch = "char";new char[str.getlength()+1];//为什么这里不将指针ch赋值,下面的复制函数调用ch时也是新创建空间的数据呢?strcpy(ch, str.data());ch = new char[str.getlength()+1]; // 这里这样写就能明白了,但是为什么ch没有被赋值,但是还会指向新创建的空间呢?
可以把一个字符串数组的首地址赋给一个指向字符的指针的。例如:char s[20][30],*p;使用下面的任何一个语句,都可以实现“把一个字符串数组的首地址赋给一个指向字符的指针”:p=s;p=&s;p=s[0];p=&s[0];p=&s[0][0];