zoukankan
html css js c++ java
关于局部变量存放在栈区的问题
昨天在看jvm运行态数据存放区域的时候,看到他的栈区用于存放局部变量,突然有个问题,为啥局部变量要放在栈中。似乎之前学C的时候,C的局部变量也是放在栈中,当时学写汇编的时候似乎没有这方面的问题。
好吧,来整理下。产生这个问题的主要原因是,局部变量为啥要用栈结构来保存,因为觉得栈访问的时候会pop,这样的话就会将局部变量给弄没了,这不是懵逼了么。后来仔细想了想当时自己写OS的时候的想法,其实这里访问的时候只是用栈指针来进行访问,并不会pop这种。
因为局部变量的大小都是确定的,并且位置也是固定的,所以可以利用栈来保存,并且可以用栈指针来访问。并且,当函数退出的时候,这个函数栈也就失效了,这个栈就会自动删除,所以不需要人为的删除或者利用GC来回收。
查看全文
相关阅读:
第一次冲次(补)
软件工程概论个人总结
第16周进度条
读《梦断代码》第2章有感
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知。
怎么卸载VS2005呢?控制面板里内容太多,找不出哪些是属于VS2005?我的VS2005出问题了
常用正则表达式的写法
Http响应头字段详解,MyEclipse配置tomcat,servlet运行方式
html框架 字体颜色 列表 表格 图片 定义列表 a标签
原文地址:https://www.cnblogs.com/sunrye/p/6504867.html
最新文章
邮件服务器hMailServer管理工具hMailServer Administrator汉化(转)
信步漫谈之Axis2—wsdl2java工具使用
简道云--最基本的入门
简道云的基本概念
Git介绍
文件处理
自定义监控、监控报警
手动、自动添加、自动发现、代理
zabbix安装与配置
mariadb数据库中select用法
热门文章
Mycat读写分离
Redis数据库
数据库分类及介绍
Mariadb数据类型
《软件需求模式》阅读笔记01
问题账户需求分析
关于sqlserver 2008 服务出现远程调用失败
2016年秋季个人阅读计划
Oracle的Environment variable:"path" 失败问题
第二次冲刺
Copyright © 2011-2022 走看看