定义int b[3][4],*q[3]; 下列赋值表达式中是正确的A.q=b b.q=*b c.*q=b+1 D.*q=
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/03 08:17:15
定义int b[3][4],*q[3]; 下列赋值表达式中是正确的A.q=b b.q=*b c.*q=b+1 D.*q=&b[1][2]
为什么呢?
A q=b
B q=*b
C *q=b+1
D *q=&b[1][2]
为什么呢?
A q=b
B q=*b
C *q=b+1
D *q=&b[1][2]
int *q[3];说明q是一个一维数组,有3个元素,每个元素都是指向int的指针,
q也是一个指向int的指针的指针.
*q代表q[0],表示第一个元素,*q是一个指针,所以这里只有选择D *q=&b[1][2]是正确的.
因为&b[1][2]是一个地址,可以给指针赋值.
再问: 那么我想问*q与*pa代表的意义是不是相同的呢?*pa是指向一个值吧。那么如果相同意义,那么*q不就是q【0】指向b数组的某一个值,而不是地址?
再答: 你这里的pa应该是b,*b是b[0]=&b[0][0],都是二维数组b的第一个元素的地址。 int *q;和 int *q[3]这两者是不同的指针, 前者是一级指针,*p的值是个整型值,后者是二级指针,*p的值是内存地址,对它再次求*,即**p才是个整型值。 所以对于int *q[3];*q是一个地址而不指向b数组的某一个值
q也是一个指向int的指针的指针.
*q代表q[0],表示第一个元素,*q是一个指针,所以这里只有选择D *q=&b[1][2]是正确的.
因为&b[1][2]是一个地址,可以给指针赋值.
再问: 那么我想问*q与*pa代表的意义是不是相同的呢?*pa是指向一个值吧。那么如果相同意义,那么*q不就是q【0】指向b数组的某一个值,而不是地址?
再答: 你这里的pa应该是b,*b是b[0]=&b[0][0],都是二维数组b的第一个元素的地址。 int *q;和 int *q[3]这两者是不同的指针, 前者是一级指针,*p的值是个整型值,后者是二级指针,*p的值是内存地址,对它再次求*,即**p才是个整型值。 所以对于int *q[3];*q是一个地址而不指向b数组的某一个值
设有定义:int n=0,*p=&n,**q=&p,则下列赋值语句哪个是正确的?A.p=1;B.*q=2;C.q=p;D
7.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( ).A) p=1; B) *q
设有定义:int n=0,*p=&n,**q=&p;则一下选项中,正确的赋值语句是()A,P=1B.*q=2 C.q=p
设有定义语句:int =0,*p=&你,*q;以下选项正确的是?a;p=1 b:p=q c:*p=*q
若有一些定义和语句#include int a=4,b=3,*p,*q,*w;p=&a;q=&b;w=q;q=NULL;
下列四个选项中,为等比数列的是A.q,2q,4q,6q B.q,q^2,q^3,q^4 Cq,2q,4q,8q D1/q
若有说明int n=2,*p=&n,*q=p;,则以下非法的赋值语句是 A)p=q B)p=n C)*p=*q D)n=
1.若a+b+c,b+c-a,c+a-b,a+b-c成等比,且公比为q,则q^3+q^2+q=?
若有以下定义和语句 int a=4,b=3,*p,*q,*w; p=&a;q=&b;w=q;q=NULL; 则以下错误的
当a=1,b=2,c=3,d=4时,则表达式a>b?a:c>d?c:d 3Q
设P、Q是两个非空集合,定义P×Q={(a,b)|a∈P,b∈Q}若P={3,4,5}Q={4,5,6,7}问P×Q
设有int p,q;以下不正确的语句是( ) A.p *=3; B.p/=q; C.p+=3; D.p&&=q;