滴水逆向_学习笔记

滴水逆向第三期学习笔记


第三节 局部变量与全局变量的区别

<h3>记住知识点:</h3> <h4>1、全局变量,在程序生成后,内存地址是固定了,只有<code>重新编译后</code>,<code>内存地址才会改变</code>。</h4> <h4>2、全局变量,在汇编中是内存地址的格式存储;局部变量是以[ebp-xxx]的格式存储。</h4> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/5a8f512d08f5776b5148aa9e2ef82e8e" alt="" /></p> <hr /> <h1>局部变量与全局变量的区别</h1> <h3>全局变量与局部变量的区别在于作用域的不同,且存在时间也可能不同。不管有不有外部的变量,main函数中的变量都不能称为全局变量。</h3> <h3>全局变量是可以被本程序所有对象或函数引用。</h3> <h4><strong>例:</strong></h4> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/2c953e11899b7a39cda1b1acf1f1a13a" alt="" /></p> <p>图中的代码,t1为全局变量,可以在main函数中使用,也可以在a函数中使用。</p> <p>而t2 t3则为局部变量,它们只能在花括号内部被使用。</p> <p>所以a函数不能使用t2,main函数也不能使用t3。</p> <hr /> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/87f6cbca61b057b9a868701ba0f408f9" alt="" /></p> <hr /> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/f8a9b9112bf302a3d914e47e47facd0a" alt="" /></p>

页面列表

ITEM_HTML