函数调用另外一个词语表示叫做过程。一个过程调用包括将数据和控制从代码的一部分传递到另外一部分。另外,它还必须在进入时为过程的局部变量分配空间,并在推出时释放这些空间。而数据传递,局部变量的分配和释放经过操纵程序栈来实现。数据结构
栈帧也叫过程活动记录,是编译器用来实现过程函数调用的一种数据结构。ide
下面的一段代码,在main函数中并无调用使虚拟机重启的函数,可是虚拟机为何会重启?函数

这个缘由就与栈帧有关,如下的图是对这个程序的解析spa

利用栈帧的知识,还能够不用b,可是能够改变b变量的值。blog

如下是结果:get
