如图,我附加了计算器。图中红框处,sub rsp,0x20。这个应该就是给参数开辟空间吧?
但是我在网上查资料,以及自己在VS里面写程序调试,都得到同一个结论:当参数为0-4个的时候,应该开辟28个字节空间的……
那为什么有的程序里面,它开辟的是20个字节的空间呢?
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
0x20 != 20
而且0x20刚好可以存 4个变量
你与明日 0x20 != 20 而且0x20刚好可以存 4个变量
默NJ 对齐
大鲤鱼 我查资料,跟自己用VS调试得出结论:参数为4个或以下时,都是开辟0x28个字节空间,也就是按照16n+8对齐的。然后我忽然发现有些程序里面,它只开辟了0x20个字节空间,所以我就纳闷,它为什么不按照1 ...