数据结构里,假设指针变量为p指向某块内存区域,则回收这块区域所用的语句,不正确的是()。
第1题:
若有定义float a=25,b,*p=&b;,则下列对赋值语句*p=a;和p=&a;的正确解释为( )。
A.两个语句都是将变量a的值赋予变量p
B.*p=a是使p指向变量a,而p=&a是将变量a的值赋予变量指针p
C.*p=a是将变量a的值赋予变量b,而p=&a是使p指向变量a
D.两个语句都是使p指向变量a
第2题:
若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是
A.p=2*(int*)malloc(sizeof(int));
B.p=(int*)mall0c(2*sizeof(int));
C.p=(int*)malloc(2*2);
D.p=(int*)calloc(2,sizeof(int));
第3题:
有以下程序段
typedef struct node { int data; struct node *next; } *NODE;
NODE p;
以下叙述正确的是
A)p 是指向 struct node 结构变量的指针的指针
B)NODE p ;语句出错
C)p 是指向 struct node 结构变量的指针
D)p 是 struct node 结构变量
第4题:
A.语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p所指向的变量
B.语句①和②中的*p含义相同,都表示给指针变量赋值
C.语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p
D.语句①和②的执行结果都是把变量x的地址赋给指针变量p
第5题:
若指针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));
第6题:
设有语句:“int a=1,b=2,*p1=&a,*p2=&b;”,则使指针p1指向变量b的赋值语句是______。
A.p1=*p2
B.*p1=p2
C.p1=p2
D.*p1=*p2
第7题:
若指针p已正确定义,要使p指向两个连续的整型动态存储单元,则正确语句是( )
A.p=2 *(int *)malloc(sizeof(int));
B.p=(int*)calloc(2*sizeof(int));
C.p=(int*)malloc(2* sizeof(int));
D.p=2 *(int*)calloc(sizeof(int));
第8题:
a. free(p);
b. free p;
c. free(*p);
d. free[p];
第9题:
若有定义“floata=25,b,*p=&b;”,则下列对赋值语句“*p=a;”和“p=&a;”的正确解释为( )。
A.两个语句都是将变量a的值赋予变量p
B.*p=a是使P指向变量a,而P=&a是将变量的值赋予变量指针p
C.*p=a是将变量a的值赋予变量b,而&;a是使P指向变量a
D.两个语句都是使p指向变量a
第10题:
在下列叙述中,错误的一条是______。
A.有下列语句组,则c=(*p)(a,b)与c=max(a,b)等价 int max();int(*p)();int c;p=max;
B.执行下列语句后,则*p的值为1 int a=1,*p;*p=&a;
C.已知指针变量p1指向数组元素a[1],p2指向数组元素a[4],则p2-p1=4-1=3
D.2个指针变量指向同一数组时可以进行比较,其值为1或0