1、char p与char p[]有什么区别?
char p是一个指针,根本没分配内存,它指向的"abc123ABC" 是只读的,不能改变,在下面给它赋值肯定是错的;
char p[]是一个数组,已经分配内存,是将"abc123ABC" 复制到该内存里面,这个内存是可读写的;
(char*) p 是将p强行转换成指向char类型的指针
char *s1 = "string";
char s2[] = "string";
//s2 = "w";//不可修改的左值
//s1 = "w";
//cout << s1 << endl;
*s2 = 'w';
//*s1 = 'w';//error
cout << s2 << endl;
cout << s1 << endl;
return 0;