社区
C语言
帖子详情
为什么VS下一个int总是从ebp-8开始,ebp-4对应的4个字节干吗用了?
dpdp_2012
2012-10-10 05:11:30
RT
...全文
542
5
打赏
收藏
为什么VS下一个int总是从ebp-8开始,ebp-4对应的4个字节干吗用了?
RT
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dpdp_2012
2012-10-10
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
1 我记不清了,你可以查一下vc用了防止stackoverflow 机制,在返回地址前插一个checkval。
我不确定是不是这玩意,你可以搜一下。
[/Quote]我也是在想留出这四个字节,是不是和什么缓冲区溢出有关。
大熊猫侯佩
2012-10-10
打赏
举报
回复
ebp+4是返回地址鸟
swlilike
2012-10-10
打赏
举报
回复
ebp-4 是不是存放 ret 的返回地址了?
大熊猫侯佩
2012-10-10
打赏
举报
回复
1 我记不清了,你可以查一下vc用了防止stackoverflow 机制,在返回地址前插一个checkval。
我不确定是不是这玩意,你可以搜一下。
大熊猫侯佩
2012-10-10
打赏
举报
回复
你说的是函数局部变量是吧?这个没有绝对。
因为在函数进入序言后,
ebp->old ebp
ebp+4->ret addr
ebp+8->1st parm
所以ebp-4是可以使用的,至于vc为啥不用,2种可能:
1 做vc专有用途
2 简单无视他,就是不用
VC++函数调用过程汇编分析(基于
vs
2012)
本文将在
VS
2012环境下对函数调用过程的汇编代码进行分析。分析不到位或者存在错误的地方请批评指正,请与作者联系。 我们对下面最简单的这种函数调用进行分析。
int
test(
int
a,
int
b){
int
c; c = a + b; return c; }
c语言烫烫烫,每
一个
程序员都会经历的“烫烫烫”
0x00 说明“烫”这个汉字在计算机程序执行出错时老是出现,特别有意思,尤其在Windows环境下执行越界访问的程序,会打印出一串“烫烫烫…”,作者以前在
VS
下写程序的时候就出现过一直打印“烫”,当时没有去仔细研究研究为什么是“烫”这个汉字,现在特把这个原因说明。0x01 “烫”的GBK编码首先,不得不提到“烫”的GBK编码为“0xCCCC”,同时在x86系统中“0xCC”代表汇编指令”
INT
3...
【C语言】C语言中的函数栈帧
函数栈帧(简称"栈帧")是指当
一个
函数被调用时,在栈上为其分配的一块独立内存区域。每个函数调用都会创建
一个
对应
的栈帧,函数执行结束后,栈帧会被销毁(出栈)。存储函数的参数;保存返回地址(函数执行完后回到调用者的位置);存储函数的局部变量;保存调用者的栈基指针(
ebp
),以便函数返回时恢复调用者的栈帧;提供临时数据的存储空间(如表达式计算的中间结果)。特性GCC(x86)栈初始化用填充未初始化区域(调试模式)不主动填充,内存值为随机残留安全机制。
C语言梦开始的地方23:函数栈帧
我们在写C语言代码的时候,经常会把
一个
独立的功能抽象为函数,所以C程序是以函数为基本单位的。那函数是如何调用的?函数的返回值又是如何的?函数参数是如何传递的?这些问题都和函数栈帧有关系。函数栈帧函数参数和函数返回值临时变量(包括函数的非静态的局部变量以及编译器自动生产的其他临时变量)保存上下文信息(包括在函数调用前后需要保持不变的寄存器)。栈(stack)是现代计算机程序里最为重要的概念之一,几乎每
一个
程序都使用了栈,没有栈就没有函数,没有局部变量,也就没有我们如今看到的所有的计算机语言。
ChatLab 使用 AI Agent 转换聊天记录:chatlab-convert Skill 全流程实战指南
ChatLab 是一款本地优先(Local-first)的 AI 聊天记录分析工具,能够将多平台聊天导出统一转换为标准格式后进行分析。当某个聊天平台的导出格式尚未被 ChatLab 原生识别时,你可以借助官方的 `chatlab-convert` 技能(Skill),让本机 Agent 自动分析文件结构、编写可复用的转换脚本,并将记录转换为 [ChatLab 标准格式](https://link.
C语言
70,040
社区成员
243,237
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章