更多“在C语言中,关于指针的定义,下列选项不正确的是()A、int*p;B、floatp*;C、char*c;D、int*c;”相关问题
  • 第1题:

    下列对变量的引用中,错误的是()。A.int a;int &p=a;B.char a;char &p=a;C.int a;int &

    下列对变量的引用中,错误的是( )。

    A.int a;int &p=a;

    B.char a;char &p=a;

    C.int a;int &p;p=a;

    D.float a;float &p=a;


    正确答案:B

  • 第2题:

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

    A.int*p=(floatx)

    B.floatp=&x

    C.float*p=1024

    D.float*P=&x


    正确答案:D

  • 第3题:

    语句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

  • 第4题:

    下列定义语句中,错误的是

    A.int px*;

    B.char*acp[10];

    C.char(*pac)[10];

    D.int(*p)();


    正确答案:A
    解析:B项定义了一个指针数组,正确。C项定义了一个指向字符数组的指针,即数组指针,正确。D项定义了一个指向返回值为整型量的函数的指针,即函数指针,正确。A项定义语句错误,本题选A。

  • 第5题:

    下列说法不正确的足( )。

    A.int*ptr;//指针指向整形数据

    B.char*ptr;//指针的类型是字符型指针

    C.int**ptr;//指针的类型是双重指针

    D.int(*ptr)[3];//是一一个指针数组,数组共有三个元素,而三个元素是int型指针


    正确答案:D
    解析:int(*ptr)[3]是一个数组指针,指针指向一个有3个int型变量的数组。

  • 第6题:

    C语言中main函数参数的非法表示形式是( )

    A.main(char*argv[],int argc)

    B.main(int a,char **b)

    C.main(int y,char*x[])

    D.main(int argv,char * argc[])


    正确答案:A

  • 第7题:

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

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

    正确答案:C

  • 第8题:

    在C语言中,关于指针的定义,下列选项正确的是()

    • A、intp;
    • B、floatp*;
    • C、char*c;
    • D、int&p;

    正确答案:C

  • 第9题:

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

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

    正确答案:C,D

  • 第10题:

    在C语言中下列变量定义和赋值错误的是()。

    • A、int i,j=20;
    • B、char c="c";
    • C、float f=1+2;
    • D、int x,y;x=y=10;

    正确答案:B

  • 第11题:

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

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

    正确答案:A,C,D

  • 第12题:

    若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是()。

    • A、p=2*(int*)malloc(sizeof(int));
    • B、p=(int*)malloc(2*sizeof(int));
    • C、p=(int*)malloc(2*2);
    • D、p=(int*)calloc(2,sizeof(int))。

    正确答案:A

  • 第13题:

    下列对变量的引用中,错误的是

    A.int a; int &p = a;

    B.char a; char &p = a;

    C.iht a; int &p; p =a;

    D.float a; float &p=a;


    正确答案:C
    解析:本题考核引用的定义和初始化。引用具有如下特点:引用能够使用任何合法变量名:引用不是变量,所以必须在定义时初始化,而且一旦初始化之后,就不能再成为其他变量的引用;引用不是值,不占存储空间,说明引用时,目标的存储状态不会改变。所以,引用只有说明,没有定义;引用仅在说明时带有“&”,以后就像普通变量一样使用,不能再带“&”。在C选项中,由于在定义引用p后没有进行初始化,所以此语句错误。

  • 第14题:

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

    A. int p=&x;

    B. int *p=&x;

    C. int p=x;

    D. int *p=x;


    正确答案:B

  • 第15题:

    下列对变量的引用中,错误的是()。A.int a; int &p=a;B.Chara;char &p=a;C.int a; int &am

    下列对变量的引用中,错误的是( )。

    A.int a; int &p=a;

    B.Chara;char &p=a;

    C.int a; int &p;p=a;

    D.float a;float &p=a;


    正确答案:C
    解析:本题考核引用的定义和初始化。引用具有如下特点:①引用能够使用任何合法变量名。②引用不是变量,所以必须在定义时初始化,而且一旦初始化之后,就不能再成为其他变量的引用。③引用不是值,不占存储空间,说明引用时,目标的存储状态不会改变。所以,引用只有说明,没有定义。④引用仅在说明时带有“&”,以后就像普通变量一样使用,不能再带“&”。在选项C中,由于在定义引用p后没有进行初始化,所以此语句是错误的。故本题答案是C。

  • 第16题:

    若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是______。

    A.p=2*(int*)malloc(sizeof(int));

    B.p=(int*)mallet(2*sizeof(int));

    C.p=(int*)malloc(2*2);

    D.p=(int*)calloc(2, sizeof(int));


    正确答案:A
    解析:本题考查malloc函数和calloc函数的应用。C语言中库函数malloc和calloc的功能都是向系统申请分配内存空间。其中函数malloc的调用为:malloc(size),其中size是一个无符号整数,表示向系统申请多大的存储空间;calloc(n,size)表示向系统申请n个大小为size的存储空间。新标准C提供的malloc和calloc函数的类型规定为void*类型,使用时根据需要进行强制类型转换。选项B、C、D都能满足p指向两个连续的整型存储单元的要求,其中(int*)表示强制类型转换。

  • 第17题:

    有定义语句:“int*p[4];”,以下选项中与此语句等价的是( )。 A.int p[4];B.int**P;SXB

    有定义语句:“int*p[4];”,以下选项中与此语句等价的是( )。

    A.int p[4];

    B.int**P;

    C.int*(p[4]);

    D.int(*p)[4];


    正确答案:D
    本题int*p[4]的作用是声明一个指针数组,每个元素都是int*型指针。

  • 第18题:

    下列对变量的引用中,错误的是

    A.int a; int &p=a;

    B.char a;char &p=a;

    C.int a; int &p;p=a;

    D.float a;float &p=a;


    正确答案:C
    解析:本题考核引用的定义和初始化。引用具有如下特点:引用能够使用任何合法变量名;引用不是变量,所以必须在定义时初始化,而且一旦初始化之后,就不能再成为其他变量的引用;引用不是值,不占存储空间,说明引用时,目标的存储状态不会改变。所以,引用只有说明,没有定义:引用仅在说明时带有“&”,以后就像普通变量一样使用,不能再带“&”。在C)选项牛,由于在定义引用p后没有进行初始化,所以此语句错误的。

  • 第19题:

    在C语言中,5种基本数据类型的存储空间长度的排列顺序是()。

    • A、char<int<long int<=float<double      
    • B、char=int<long int<=float<double 
    • C、char<int<long int<float=double       
    • D、char=int=long int<=float<double

    正确答案:A

  • 第20题:

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

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

    正确答案:C

  • 第21题:

    下列不合法的指针变量的定义是()

    • A、int*_k
    • B、char*_245
    • C、int*p
    • D、double*5_is

    正确答案:D

  • 第22题:

    在C语言中(以16为PC机为例),5种基本数据类型的存储空间长度的排列顺序为()。

    • A、char < int < long int <= float < double
    • B、char = int < long int <= float < double
    • C、char < int < long int <= float = double
    • D、char = int = long int <= float < double

    正确答案:A

  • 第23题:

    已知:int**p;则变量p是()

    • A、指向int型变量的指针、
    • B、指向指针的指针
    • C、int型变量
    • D、以上三种说法均不正确

    正确答案:B