有定义函数 int fun(int a); int (*p)(int)=fun;则可以正确调用fun函数一组的是
选A
fun是个函数,它同时也是个指针,它的指针值就是它的地址,自己指向自己
所以fun,&fun,*fun都是同一个值
同理,p是指向fun的指针,那么*p是解地址的值,值还是fun的地址
B.&p不可以,那是p的地址不是fun的地址
C,D,凡*p和*fun没有括起来的,那是函数返回值再解地址,必须括起来
这个首先你的理解括号的作用。
括号一般用于函数,表达式,强制转换。(*)或(&)它是什么呢?明显不符合函数的定义,又不符合强制转换的定义。那它就是表达式。你用表达式的方式来理解一下就很容易