由上图中可以知道进程地址空间中最顶部的段是栈,代码中调用函数、定义局部变量(但不包含static修饰的变量)或声明的类的实例等等都要使用栈空间,当函数执行完(也就是程序执行超过了这个函数的作用范围的时候),操作系统会把该函数在栈中存放的数据出栈,也就是函数执行完需要return的时候系统会自己释放内存。但是如果不断的向栈中压入数据,达到最大的栈空间大小的话就会栈溢出(stack overflow),这时候程序运行就会出现段错误(Segmentation Fault)。
巧克力娃娃
加入Vishay电子学习社,优质资源限时免费放送
嵌入式软件调试专题第01季:调试原理入门
uboot和系统移植(部分免费课程)
3小时学会PADS做任意PCB封装类型方法技巧
Python使用培训
内容不相关 内容错误 其它