gpt4 book ai didi

c - 为什么变量的地址在运行之间不断变化?

转载 作者:IT王子 更新时间:2023-10-29 01:23:14 27 4
gpt4 key购买 nike

<分区>

我制作了两个完全相同的 C 程序。
使用 GCC 编译器在 Linux 上编译它们并获得两个独立的可执行文件。
然后我使用 objdump 检查了两者的汇编代码,发现指令是相同的。甚至两个文件中对应指令的地址也是一样的。

程序是打印其中一个变量的地址。

程序运行时产生的地址不同,而且同一个程序每次运行时产生的地址也不一样。

为什么两个程序的代码行地址相同,但即使是同一个程序,每次运行时变量地址都变了?

我怀疑屏幕上打印的地址可能是虚拟地址,但如果是虚拟地址,为什么每次都不能相同? objdump得到的汇编代码中显示的地址也是虚拟的吗?

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com