关于字符串的赋值问题,网上说得很多,都谈论的是,用‘=’号时是指向同一地址,strcopy时是得到两个相同的字符串,但是却没有提及到修改问题。
其实,当用‘=’号赋值时,得到的字符串是不能够修改的,但是编译时却不会提示错误。而用strcpy复制时,可以对字符串修改,但在使用strcpy之前,应该用new或malloc等为字符串分配空间。
// char *str="hello";
char *str;
str=new char;
strcpy(str,"hello");
str[0]='H';
cout<<endl<<str<<endl;
本文探讨了C++中字符串的两种赋值方式:使用'='号进行引用赋值与使用strcpy进行深拷贝的区别。通过实例说明了用'='号赋值时字符串不可修改,而用strcpy赋值时字符串可修改但需先分配内存。

5086

被折叠的 条评论
为什么被折叠?



