摘要:
我相信,使用C/C++多年的人对下面这个字符串赋值语句都不会陌生吧。 char* p = "test";同时,我也相信,各位在使用这种语句后吃过很多苦头也不少吧?只要你想利用指针p来改变字符串的内容,你的程序都会得到一个让你颜面尽失一个内存非法操作。比如,下面的这些语句: p[0] = 's'; strcpy(p, "haoel");原因就在于,char* p = "test"; 这个声明,声明了一个指针,而这个指针指向的是全局的const内存区,const内存区当然不会让你想改就改的。所以,如果你一定要写这块内存的. 阅读全文