A-A+
有以下程序 iht add (int a int b) {return(a+b);} mi
问题详情
有以下程序 iht add (int a, int b) {return(a+b);} mian() {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
解析:此题定义了指向函数的指针变量f指向了函数add的入口地址,所以,要调用函数,可以通过函数名(选项B的形式)或函数指针变量(选项A、D的形式)调用即可,而选项C中是先进行函数调用,然后对调用后返回的整型值求其指针值,事实上,对常量求指针值是不合理的,所以选项C错误。