|
在c语言里
int main() {
const char* s1 = "test";
char *s2 = s1;
s2 = "It's modified!";
printf("%s\n",s1);
}
out: It's modified!;
这样也可以吗? 照我的理解岂不是const限定符在c语言里只是摆设一个
在c++里
int main() {
const char* s1 = "test";
char* s2 = s1;
...
}
这样编译通不过,说不能从const char* 转换到char*
再者
int main() {
const char* s1 = "test";
char* s2 = (char*) s1;
s2 = "It's modified!";
cout << s1 << endl;
cout << s2 << endl;
}
out:test
It's modified!
这次强制转换并编译通过,可是s1的值并没有改变!!
小弟还是新手!! 请大家赐教!!! |
|