g4u*_*r4v 9 c c++ pointers memory-management
假设有一个变量a和一个指向p地址的指针a.
int a;
int *p=&a;
Run Code Online (Sandbox Code Playgroud)
既然我有一个指向变量位置的指针,我知道确切的内存位置(或内存块).
我的问题是:
给定一个地址,我们能找到哪个变量正在使用它们吗?
不,这是不可能的。变量指向内存,而不是相反。没有某种方法可以从编译的代码中获取变量名称,除非通过符号表,而读取符号表可能需要搞乱汇编。
给定一个地址,我们至少能找到该内存地址所属的内存块有多大吗?
不,仅凭地址是无法做到这一点的。您可以在取消引用地址后找到sizeof(),但不能从地址本身找到。
| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |