参考答案和解析
正确答案:C
解析:A、B项中,实参不全,缺省的参数默认为函数原型中的初始值,但在C项中,第二个实参(char型)与函数原型中的第二个形参类型不一致,故C项错误。
更多“考虑以下的函数原型: vold A(int a,int b=5,char Z='*')' 下面的函数调用中,不正确的是A.A(7)B.A ”相关问题
  • 第1题:

    已知函数fun的原型为

    int fun(int,int,int);

    下列重载函数原型中错误的是

    A.char fun(int,int);

    B.double fun(int,int,double);

    C.int fun(int,char木);

    D.float fun(int,int,int);


    正确答案:D
    解析:重载函数至少要在参数个数或参数类型上有所不同。选项D)的重载函数只有返回值不同,其他(参数个数及类型)完全相同。因此,本题答案为D)。

  • 第2题:

    若有以下说明和定义,则对fun函数的正确调用语句是() int main() { int (*a)(int*),*b(),w[10],c; : : return 0; } int fun(int *c) {...}

    A.a=fun; a(w);

    B.a=fun; (*a)(&c);

    C.b=fun; *b(w);

    D.fun(b);


    a=fun; (*a)(&c);

  • 第3题:

    3、若有以下说明和定义,则对fun函数的正确调用语句是() int main() { int (*a)(int*),*b(),w[10],c; : : return 0; } int fun(int *c) {...}

    A.a=fun; a(w);

    B.a=fun; (*a)(&c);

    C.b=fun; *b(w);

    D.fun(b);


    a=fun; (*a)(&c);

  • 第4题:

    设函数findbig已定义为求3个数中的最大值。以下程序将利用函数指针调用findbig函数,请填空。main(){ int findbig(int,int,int); int (*f)(),x,y,z,big; f=; scanf("%d%d%d",&x,&y,&z); big=(*f)(x,y,z); printf("big=%d\n",big);}


    正确答案:findbig
    在main()函数中,int findbig();是对被调函数的说明,其功能是告诉系统在本函数中将用到该函数且返回整型值。int (*f)();说明f是一个指向函数的指针变量,此函数带回整型的返回值。赋值语句f=findbig;的作用是将函数findbig的入口地址赋给指针变量f,这时f就是指向函数findbig的指针变量。要注意的是,在给函数指针变量赋值时,只需给出函数名而不必给出参数,因为是将函数的入口地址赋给f,而不涉及实参与形参的结合问题。故本题答案为findbig。

  • 第5题:

    【多选题】以下函数原型中,字符串指针作函数参数的是()。

    A.int f(char *p)

    B.int f(char *)

    C.int f(int *p)

    D.int f(int *)


    B