返回值分析 函数不能通过返回指向栈内存的指针,返回指向堆内存的指针是可以的. 一.返回局部变量的值 可以有两种情况:返回局部自动变量和局部静态变量,比如: int func() { ; // 返回局部自动变量的值,没问题 return temp; } 局部变量temp存储在栈中,函数返回时会自动复制一份temp的copy给调用者,没有问题. int func() { ; // 返回局部静态变量的值,没问题 return a; } 局部变量a存储在静态(全局)存储区中,仅分配一次内存,并且函数返回