请教关于函数指针一个问题
看《程序员面试宝典》中有道题要定义一个函数指针如下
int max(int x,int y)
{
return x>=y?x:y;
}
int main
{
int max(int,int);
int(*p)(int,int)=&max;//疑问:这里的max本身不就是地址了么,还加一个&不成了指向地址的指针了啊???
}
在谭浩强的书里面有个类似例子是这样的:
int max(int x,int y)
{
return x>=y?x:y;
}
int main
{
int max(int,int);
int(*p)(int,int);
p=max;//疑问:这跟上面的对应处到底哪个是对的啊???
}
[解决办法]
char a[10];
char *p = &a;
char *p = a;
[解决办法]
10楼的例子很好,函数首地址也可以这么来理解