我觉得把内存分布弄清楚,这些问题就没这么复杂了...
char *a="abc"在常量区或者静态存储区,这个跟编译器有关。而char a[]="abc"在栈存储区中,而不在堆存储区中,堆存储区一般通过申请内存获得,比如大家所熟悉的new操作..
char *a="abc"在常量区或者静态存储区,这个跟编译器有关。而char a[]="abc"在栈存储区中,而不在堆存储区中,堆存储区一般通过申请内存获得,比如大家所熟悉的new操作..
[此贴子已经被作者于2007-9-20 22:42:34编辑过]
英者自知,雄者自胜