TC官方合作论坛

 找回密码
 立即注册
查看: 1708|回复: 5

[学习心得] 【类人猿TC内存探讨】 第三讲:内存变量指针

[复制链接]
发表于 2017-8-2 21:40:52 | 显示全部楼层 |阅读模式
本帖最后由 类人猿 于 2017-8-31 01:06 编辑

这里不针对任何网络游戏和公司,如果触犯官方麻烦请联系本人QQ:578052137  技术群:128262077 处理,也希望版主高抬贵手。本人只是一名计算机业余爱好者,平时都有自己稳定的工作,学习这个就是业余爱好。我觉得学习脚本最好的老师还是兴趣,可以做自己感兴趣和喜欢的东西不是挺好的吗?
<<<<<<<<<<<<<<<<<<<<<<
认识内存,必先了解TC自身<<<<<<<<<TC6.2版本,新版待测试<<<<<<<<<  
Tips:有不少新手以为鼠标那个指针跟这个内存指针是同样的玩儿,我也很无奈还要和我喷这个。我再重复声明他们两个是完全不同的东西。亲们,不懂还是多谦虚点学习哦。

好东西要跟大家分享才对的。下面我看下TC内存指针支持:TC指针支持大概分为下面几个方面
1.变量指针   2.一般TC函数指针  3.结构体指针  4.回调函数特殊指针
抛开术语概念,内存分析变量要至少从三方面来考虑问题:1.变量类型,2.内存空间长度,3.变量指向内存地址

                                      首先我来分析: 变量指针
  1. //==========================================================首先我们看下TC变量指针源码
复制代码
var A=100
traceprint(getvarpointer(A))

现在我们思考三个问题:A数据类型是什么?A在内存空间长度是多少呢?变量指针是多少呢?
根据我分析达到答案:A是个长整数,在TC里面占四个字节,变量指针可通过 “获取变量指针(A)”命令来获取.

思考验证:这里变量指针是否和C语言的指针一样的呢?其实不是真正的指针,在TC里面变量var是多类型,在内存里面表示多内存很可能他是个结构体或者是个类。当然说结构体可能大家有晕了,如果这里
看不明白的话可以先跳过的,结构体就是类似数组,但是能支持很多类型。
1.下面我用TC写了个内存测试脚本方便测试
     //这里我添加了一个按钮和一个编辑框,编辑框是用来显示数据的    var A=100
    function 按钮0_点击()
    A=A+100
    traceprint(getvarpointer(A))
    editsettext("编辑框0",A)
    traceprint(A)
    end

2.点击自增,再用CE进行内存的搜索得到A的内存指针是:04948F20,它的值就是400。



3.如下,当时我们发现了一个问题:78483224这个值是变量指针 十六进制 就是:04AD8F18,和我们CE查找到的内存地址相差8


            


4.思考:为什么会这样的?为什么不一致的?
因为TC变量var应该是个结构体或者类库来的,不是真正意义的指针,不同数据类型它会自动智能进行内存储存。我们在这里猜测工程师的编写TC思路而已,应该是不会有错的。


5.我们再次进行内存查看验证果然是这样,下面还有很多0的空值,可能是储存其他数据类型。


最后结论:整数型变量地址=CE搜索真正地址(获取变量指针)+8
整数型变量地址=CE搜索真正地址(获取变量地址)希望大家有所收获。其他数据类型我就不一一测试了,希望大家能把结果反馈给我。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 3威望 +30 金币 +30 收起 理由
332475520 + 10 + 10 很给力!
言术 + 10 + 10 支持
2576605471 + 10 + 10 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2017-8-2 21:58:32 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2017-8-11 01:11:44 | 显示全部楼层
没人来看,自己点赞下!!!
回复 支持 反对

使用道具 举报

发表于 2017-8-29 15:18:10 | 显示全部楼层
类人猿 发表于 2017-8-11 01:11
没人来看,自己点赞下!!!:

支持以下,虚心学习~!
回复 支持 反对

使用道具 举报

发表于 2017-9-11 17:14:46 | 显示全部楼层
学习了,感谢楼主
回复 支持 反对

使用道具 举报

发表于 2017-9-24 15:16:15 | 显示全部楼层
相差8么?不止啊,还有最后的三连等是什么意思
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-5-19 15:04 , Processed in 0.050613 second(s), 26 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表