【发布时间】:2010-10-14 05:22:41
【问题描述】:
试图理解指向函数的指针实际代表什么?是不是函数所在的代码段中的地址?
例如:这段代码:
#include <stdio.h>
void foo(void)
{
}
int main(void)
{
int a = 10;
printf("a's address: %p\n", &a);
printf("foo's address: %p\n", foo);
return 0;
}
...打印这个:
[sh/prog-exercises/adam]:./a.out
a's address: 0xbfffb414
foo's address: 0x8048430
我想我对进程的堆栈/堆与 ELF 数据段/代码段的关系有点困惑。任何有用的指示都会受到欢迎。另外,我的第一个问题,所以请温柔一点,我真的很想学习。谢谢!
【问题讨论】:
标签: c pointers function-pointers