1.返回局部变量地址错误。
因为局部变量的生存周期仅在当前函数中,因此,如果在某函数返回局部变量地址,将引起内存错误。
int * test(void)
{
int i = 0;
return &i;
}
2.临时空间过大。
操作系统在加载某个应用程序时,都将为其分配一定大小的栈空间,如果申请过大的局部变量,将出现栈溢出问题。
3.申请堆空间后未释放。
在使用完堆空间后,一定要释放该段的内存空间。