更多“23、已有定义int (*p) ();指针p可以 。”相关问题
  • 第1题:

    语句int*p=&k;定义了指针p,与这个语句等效的语句序列是

    A.int*p;p=&k;

    B.int*p;p=k;

    C.int*p;*p=&k;

    D.int*p;*p=k;


    正确答案:A
    解析:本题考查的知识点是:指针的赋值。题目中的语句int*p=&k;有两个作用:首先,定义了一个int型指针p;然后,将变量k的地址&k赋给刚定义的指针p。所以等效的语句序列为:int*p;p=&k;,应该选择A。

  • 第2题:

    已有定义int(*p)();,指针p可以______。

    A.代表函数的返回值

    B.指向函数的入口地址

    C.代表函数的类型

    D.代表函数返回值的类型


    正确答案:B

  • 第3题:

    若已有定义int x;下列说明指针变量p指向x的正确语句是( )

    A. int p=&x;

    B. int *p=&x;

    C. int p=x;

    D. int *p=x;


    正确答案:B

  • 第4题:

    若已定义x为int类型变量,说明指针变量p的正确语句是______。

    A.int p=&x;

    B.int*p=x;

    C.int *p=&x;

    D.*p=*x;


    正确答案:C

  • 第5题:

    若有以下定义,则不移动指针p,且通过指针p引用值为98的数组元素的表达式是int w[10] = {23,54,10,33,47,98,72,80,61},*p = w;


    正确答案:p[5](或*(p + 5))
    98是数组w的第5个元素(最开始的为第0个),而通过*p=w已经将p指向了数组w,要想不移动指针p而引用数据元素98,可以有以下两种方法:p[5]、*(p + 5)。

  • 第6题:

    在下面语句中,其含义为“p为指向含n个元素的一维数组的指针变量”的定义语句是 ( )

    A.int p [n]

    B.int * p( );

    C.int * p(n);

    D.int( * p)[n]


    正确答案:D

  • 第7题:

    设已有定义:float x;,则以下对指针变量P进行定义且赋初值的语句中正确的是( )。

    A.int*p=(float)x;

    B.float*p=&x;

    C.float p=&x;

    D.float=1024;


    正确答案:B
    指针是用来存放地址的变量,用(类型名+指针变量名)的形式定义。赋值时应将某个变量地址即8Ⅸ赋给指针变量,所以选择B。

  • 第8题:

    假定指针变量p定义为“int *p=malloc(sizeof(int));”,要释放p所指向的动态存储空间,应调用的函数为()。

    Afree(p)

    Bdelete(p)

    Cfree(*p)

    Dfree(&p)


    A

  • 第9题:

    int**p;表示定义一个*p指针变量。


    正确答案:错误

  • 第10题:

    设有C语句int a[3][4];, 则每次移动过a数组一行元素的指针变量定义形式是()

    • A、int *p;
    • B、int **p;
    • C、int(*p)[4];
    • D、int *p[4];

    正确答案:C

  • 第11题:

    若已定义a为int型变量,则对指针p的说明和初始化正确的是()。

    • A、int *p=a
    • B、int p=a
    • C、int *p=*a
    • D、int *p=&a

    正确答案:D

  • 第12题:

    下面关于指针变量int*p;描述不正确的是()

    • A、*p表示的是指针变量p的地址
    • B、int*p表示定义了一个指针类型变量
    • C、*p表示的是指针变量p的值
    • D、p=&a将a的值赋值给变量p

    正确答案:A,C,D

  • 第13题:

    下列定义中,( )是定义指向数组的指针p.

    A、int*p[5]

    B、int(*p)[5]

    C、(int*)p[5]

    D、int*p[]


    参考答案:B

  • 第14题:

    设已有定义:floatx;则以下对指针变量p进行定义且赋初值的语句中正确的是()。

    A.int*p=(floatx)

    B.floatp=&x

    C.float*p=1024

    D.float*P=&x


    正确答案:D

  • 第15题:

    若已有定义int x=2; int *p=&x;则*p的值为( )

    A. 2

    B. &x

    C. *x

    D. &p


    正确答案:A

  • 第16题:

    语句int*p=&k;定义了指针p,与这个语句等效的语句序列是A.int*p;p=&k;B.int*p;k=k;C.int*p;*p=&am

    语句int*p=&k;定义了指针p,与这个语句等效的语句序列是

    A.int*p;p=&k;

    B.int*p;k=k;

    C.int*p;*p=&k;

    D.int*p;*p=k;


    正确答案:A

  • 第17题:

    若有定义:iht*p[3];,则以下叙述中正确的是

    A.定义了一个基类型为int的指针变量p,该变量具有三个指针

    B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针

    C.定义了一个名为*p的整型数组,该数组含有三个int类型元素

    D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素


    正确答案:B
    解析:指针数组也是一种数组,所有有关的概念都适用于它。但它与普通的数组又有区别,它的数组元素是指针类型,只能用来存放地址。其格式为:存储类型数据类型*指针数组名[长度1],其含义为:定义了一个长度1的数组,其中数组元素为相应存储类型的指针。

  • 第18题:

    l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。A.float*p=&x;S

    l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。

    A.float*p=&x;

    B.int*p-(float)x;

    C.float p=&x;

    D.float*p=1024;


    正确答案:A
    指针是用来存放地址的变量,用(类型名*指针变量名)的形式定义。赋值时应将某个变量地址即&x赋给指针变量,因此选择A)。

  • 第19题:

    定义由n个指向整形数据的指针组成的数组p,其正确的方式为( )。

    A int p;

    B int (*p)[n];

    C int *p[n];

    D int (*p)( );


    正确答案:C

  • 第20题:

    指向数组元素为整型的一维数组的指针变量的定义是()。

    • A、int*p()
    • B、int(*p)()
    • C、int*p[4]
    • D、int(*p)[4]

    正确答案:C

  • 第21题:

    设有定义:int x,*p;,能使指针变量p指向变量x的语句是()

    • A、*p=&x;
    • B、p=&x;
    • C、*p=x;
    • D、p=*&x;

    正确答案:B

  • 第22题:

    定义指针变量int*p;则下列说法正确的是()

    • A、*p是指针常量
    • B、*p是一个地址
    • C、*p是指针变量
    • D、指针指向int型数据

    正确答案:C,D

  • 第23题:

    下列语句定义整型指针p1、p2,()是正确的。

    • A、intp1,p2;
    • B、int*p1,*p2;
    • C、int*p1,p2;
    • D、int**p1,p2;

    正确答案:B

  • 第24题:

    有语句:inta[10],;则()是对指针变量p的正确定义和初始化。

    • A、intp=*a;
    • B、int*p=a;
    • C、intp=&a;
    • D、int*p=&a;

    正确答案:B