**
**
栈区:
由编译器自动分配释放,存放函数的参数值,局部变量等。
代码示例:
#include <iostream> using namespace std; int *func(int b)//形参数据也会放在栈区 { int a = 10; //局部变量 存放在栈区的数据在函数执行后自动释放 return &a; //返回局变量的地址 } int main() { //接受func函数的返回值 int *p = func(); cout << *p << endl;//第一次可以打印正确的数字,是因为编译器做了保留 cout << *p << endl;//第二次这个数据就不保留了 system("pause"); return 0; }