问题 单项选择题

设有下列函数: void fun(int n,char*S){……} 则下面对函数指针的定义和赋值均正确的是( )。

A.void(*p();pf=fun;

B.void*pf();pr=fun;

C.void*pr();*pf=fun;

D.void(*p(int,cha;pf=&fun;

答案

参考答案:A

解析: 声明函数指针必须加括号,因为括号优先级高于*号。另外,函数名和数组名一样代表了函数代码的首地址,因此在赋值时,直接将函数指针指向函数名即可, fun代表首地址,所以不能加&。

单项选择题
单项选择题