有以下程序 int add (int a,int b){return (a+b);} main() { intk,(*f)(),a=5,b=10; f=add; … }

13 查阅

有以下程序

int add (int a,int b){return (a+b); }

main()

{ int k,(*f)(),a=5,b=10;

f=add;

}

则以下函数调用语句错误的是

A.k=(*f)(a,b);

B.k=add(a,b);

C.k=*f(a,b);

D.k=f(a,b);

参考答案:

C解析:本题考查函数的调用。在语句"k=*f(a,b)"中,由于"()"的优先级高于"*",所以"*f(a,b);"表示其返回类型为指针的带有两个整型参数的函数。

计算机二级