摘要: char *s="string"的内容是不可以改的void main(){ char* pStr1 = "Hello!"; char pStr2[] = "Hello!"; change(pStr1); change(pStr2);}void change(char* pInstr){ pInstr[0]='O';}两种change编译都可以通过,但发现第二个change是可以正确地修改第一个字母为'O',而第一个会操作失败导致程序死掉。为什么会这样呢,首先要搞清楚编译程序占用的内存的分区形式:一个由c 阅读全文
posted @ 2013-01-08 22:13 qx.zhong 阅读(200) 评论(0) 推荐(0) 编辑