标签:
内存四区分配图:
---------------------
| 堆区 |
---------------------
| 栈区 |
---------------------
| 全局区 |
---------------------
| 代码区 |
---------------------
1 //c++编译器优化 2 char *getStr1() 3 { 4 char *p = "abcd1"; 5 return p; 6 } 7 8 char *getStr2() 9 { 10 char *p = "abcd1"; 11 return p; 12 } 13 14 void main(void) 15 { 16 int a = 0; 17 char *p1 = NULL; 18 char *p2 = NULL; 19 p1 = getStr1(); 20 p2 = getStr2(); 21 22 printf("p1:%d....\n", p1); 23 printf("p2:%d....\n", p2); 24 }
输出结果:
p1:4214884....
p2:4214884....
说明了“abcd1”处于静态代码段,应该属于全局区。
标签:
原文地址:http://www.cnblogs.com/zpyang/p/4461576.html