若有以下说明和定义  int fun(int *C){…}  main()  {   int(*a)(int *)=fun,*b(),X[10],c;   …  }  则对函数fun的正确调用语句是( )。

admin2022-04-02  30

问题 若有以下说明和定义
 int fun(int *C){…}
 main()
 {
   int(*a)(int *)=fun,*b(),X[10],c;
   …
 }
 则对函数fun的正确调用语句是(          )。

选项 A、(*a)(&c);
B、a=a(x);
C、b=*b(X);
D、fun(b);

答案A

解析 题意中函数fun接收一个整型指针参数,返回值为int类型。main函数首先定义一个函数指针a,将函数fun的地址赋给a,所以a是指向函数fun的指针,可以通过a调用函数fun;选项A中,通过a调用函数fun,可以使用(*a),接收的参数是整型变量c的地址,正确;选项B中参数x是一个数组,错误;选项C中调用b函数,由于程序没有给出函数b的定义,所以这里调用b是错误的,而且函数b是没有参数的,这里调用b的时候传入了参数,所以C错误;选项D中,由于b是一个函数,不能作为整型指针变量传给fun函数,所以D错误;本题答案A选项。
转载请注明原文地址:https://kaotiyun.com/show/sQkp777K
0

最新回复(0)