以前一直认为函数中的字符串用字符串常量赋值时,字符串常量存储在data区,而函数栈帧中只存储data区中这个字符串常量的指针。今天在xcode中仔细观察了下,发现栈帧中其实存储了这个字符串,而非是存储字符串常量指针。另外,char * a="hello" a指向常量区,内容无法修改, char a[]="hello" a指向栈,内容可以修改,这点在ubuntu上验证了下也是这样。