00问答网
所有问题
已经定义int a[10],*p;,则合法 复制表达式是?A.p=100 B.p=a[5] C.p=a[2]+2 D.p=a+2 求高手!
如题所述
举报该问题
其他回答
第1个回答 2011-12-20
答案选d
数组名代表该数组首地址,也就是一个指针
int *p;定义了一个指针p,
看答题选项可知是对指针的操作
D选项也就是指针p向下移动两个单位
因此D是正确答案
第2个回答 2011-12-20
D.p=a+2 ;
p是一个指针,所以应该给它赋地址值。这里a可表示数组a[10]的首址
在某些情况下可以直接给p赋常量,但这种做法不是很合法的,只有在嵌入式的时候,有涉及到强制跳转到某个地址时可以用到
第3个回答 推荐于2021-02-12
D.p=a+2
追问
理由?
谢谢
追答
p是个指针,所以只能用地址给它赋值
而ABC都是用数值给p赋值
本回答被提问者采纳
相似回答
9-6已有
定义
:
int
i,
a[10],*p;,则合法
的赋值语句是
A.p=100
;
B.p=a
...
答:
p是指针,直接赋
100
肯定不对
a[5],a[2]+2都是
取数组元素,和p类型不符
已有
定义
:
int
i,
a[10],*p;,则合法
的赋值语句是___。 A)
p=100
;
B
...
答:
1 已有定义:
int
i,
a[10],*p;,则合法
的赋值语句是__D__。A)
p=100
; B)
p=a[5]
; C)
p=a[2]+2
; D)
p=a+
2;2 函数 int fun(int a) { int *t; t=&a; return *t; } 的函数值是 D 。A) 变量t的值 B) 变量t的地址 C)形参a的地址 D)形参a的值 ...
已有
定义
:
int
i,
a[10],*p;,则合法
的赋值语句是___。 A)
p=100
;
B
...
答:
int
q=1;int
*p;p=
&q;其实他的反运算就是*p=q;也就是 *p其实=1;所以return *p;的值是等于a的值;选D
c
语言 ,指针问题,设已有
定义,int
a[10] ,*p;则合法
的赋值语句是,A) p...
答:
D,数组名即是数组首元素的地址,因此
a+2
也是一个合法的地址(虽然A
,B,C
在特殊情况下也是正确的)
大家正在搜
已知int a[10],*p=a
int a[10],*p=a;
int a[10]={10*1}
若有定义int a[2][3]
若有定义int a[3][4]
int a[5],*p=a
若有定义int a 2 3
int a=3,b=2,c=1
若已定义int a
相关问题
已有定义:int i,a[10],*p;,则合法的赋值语句是...
c语言 ,指针问题,设已有定义,int a[10] ,*p;...
已有定义 int a[10],*p; 则正确的赋值语句是( ...
若有定义int a[10],*p=a;,则p+5表示什么
C语言问题,要答案和解析
经过下列的语句 int j,a[10],*p;定义后,下列语...
若有定义:Int a[10],*p=a,则*(p+5)表示(...
若有定义int a[10],*p=a,则p+6表示( )。 ...