这是一个内存地址吗?

Sta*_*ton 3 memory gdb

我正在学习gdb,我得到了第一个错误.这是错误:

0x00007fff83074096 in __kill ()
Run Code Online (Sandbox Code Playgroud)

是地址:

0x00007fff83074096
Run Code Online (Sandbox Code Playgroud)

...十六进制格式的内存地址?我把它转换为十进制,出于兴趣,数字很大.我不相信存在这么多内存地址.

Oli*_*rth 5

如果您在64位平台上运行,那么是,存在大的地址.(另见:http://en.wikipedia.org/wiki/Virtual_address.)

当然,你可能只是在某个地方有一个缓冲区溢出,它已经破坏了你的堆栈,并用废话覆盖了地址.


seh*_*ehe 5

对.它是.

它是64位进程的虚拟内存空间中的地址.

并非所有地址都在使用中(这就是地址:它只是一个标签).

你可以通过这样做看到更多有关地址的信息

:break 0x00007fff83074096
:list 0x00007fff83074096
:disassemble 0x00007fff83074096
Run Code Online (Sandbox Code Playgroud)

查看整个堆栈bactkrace

 :bt full
Run Code Online (Sandbox Code Playgroud)

在所有线程中

 :thread apply all bt full
Run Code Online (Sandbox Code Playgroud)