如何找到代码中sizeof最大的全局变量?300分全送,不够再加两千

bluebohe 2008-11-14 06:46:21
程序很大,我想找到代码中的某个占用空间最大的全局变量,谁有好的方法?
...全文
102 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
fronz 2008-11-14
同问MTK?
不关联发科那个手机解决方案什么事吧
  • 打赏
  • 举报
回复
我就想应该有什么类似lst,map之类的文件嘛。
  • 打赏
  • 举报
回复
MTK平台?手机?
  • 打赏
  • 举报
回复
bluebohe 2008-11-14
自己解决了,看MTK平台的sym文件找到了
  • 打赏
  • 举报
回复
superdiablo 2008-11-14
那只能分析编译出来的二进制程序里面的数据段了吧。另外你说的全局变量是不是包括数组,是不是包括对象?
  • 打赏
  • 举报
回复
whoo 2008-11-14
栈 还是 堆?

堆的话,可以重载,自定义自己的New或其他形式的内存分配函数。运行一遍就可以找出来。
栈的话,就复杂了,可以在每个函数里插入计算EBP - ESP的代码,但是这只是总量,还得由总量挨个去排查每个变量。


如果是全局变量的话,这个范围应该很小,读代码排查就可以吧。代码阅读困难的话,可以查阅编译后的链接文件信息。除非特别指定,变量都是放在exe的同一个块里的。配合dump.exe可以查看基于块的信息。 从链接的中间文件入手,或许有方法可以找到吧。



  • 打赏
  • 举报
回复
ok208043624 2008-11-14
mark
  • 打赏
  • 举报
回复
僵哥 2008-11-14
建议找一个开源的编译器代码,然后从它的分析器当中入手。否则很难,特别是有宏定义的。
  • 打赏
  • 举报
回复
mark
  • 打赏
  • 举报
回复
僵哥 2008-11-14
全局变量也是有作用范围的...
  • 打赏
  • 举报
回复
相关推荐
课程设计-基于C++mfc框架学生社团管理系统(源码+数据库+报告).zip 本系统实现功能 本程序为单文档应用程序主程序界面能实现查询社团信息、修改社团信息、删除社团信息、添社团信息、入团、退团、用户登录、和用户管理功能其修改社团信息、删除社团信息、添社团信息和用户管理需要用户登录后才能使用未登录就点击使用会会弹出对话框显示您还没有登录点击登录按钮会弹出用户登录对话框输入正确用户名称和密码若验证成功则会显示登录成功并显示出您用有权限高级管理员或者是普通管理员高级管理员则可以对社团信息进行修改、删除、添。点击入团按钮会弹出入社团对话框在对话框内填上相应信息后点击确定成功入后会有相关提示若没有成功则有可能您输入社团不存在点击退团按钮弹出退出社团对话框输入您要退出社团名称和学号点击确定如果成功退出会显示成功标志否则话就是您没有假如该社团活着您填信息不完全。在主程序对话框可以直接在控件内输入要修改社团信息然后点击修改按钮分别输入控件内容然后点击添按钮若要添社团当前没有话则添成功否则会失败。登录了以后点击用户管理按钮则会弹出用户管理对话框在该对话框内可以修改用户密码高级管理员还能注册新用户。
发帖
VC/MFC
加入

1.6w+

社区成员

VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
申请成为版主
帖子事件
创建了帖子
2008-11-14 06:46
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……