设有定义int a[]={1,3,5,7,9},*p=a; while(*p!=3) p++; 结果为7的表达式是:*(
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/11 05:56:08
设有定义int a[]={1,3,5,7,9},*p=a; while(*p!=3) p++; 结果为7的表达式是:*(p+2)能否详细解释下
int a[]={1,3,5,7,9},*p=a; //定义一个数组a,共五个元素;同时定义一个指针p指向数组a的首地址
p -> a[0]=1 即p是a[0]的地址
p+1 -> a[1]=3 p+1是a[1]的地址,下同
p+2 -> a[2]=5
p+3 -> a[3]=7
p+4 -> a[4]=9
while(*p!=3) p++; //*p是取地址中的内容(数据),当*p不是3时,p++完成向后移动一个数据
当*p==3时,p当前值为 原p+1 ,即指向a[1]
此时的p +1指向a[2]=5
所以,此时的p +2指向a[3]=7
即:*(p+2)==7
再问: 怎么确定的p当前值为p+1呢?
再答: 再读一遍我的回答哦
p -> a[0]=1 即p是a[0]的地址
p+1 -> a[1]=3 p+1是a[1]的地址,下同
p+2 -> a[2]=5
p+3 -> a[3]=7
p+4 -> a[4]=9
while(*p!=3) p++; //*p是取地址中的内容(数据),当*p不是3时,p++完成向后移动一个数据
当*p==3时,p当前值为 原p+1 ,即指向a[1]
此时的p +1指向a[2]=5
所以,此时的p +2指向a[3]=7
即:*(p+2)==7
再问: 怎么确定的p当前值为p+1呢?
再答: 再读一遍我的回答哦
设有定义int a[]={0,1,2,3,4},*p;,执行语句p=a+2;后,表达式*p的值为( ) A)1 B)2
设有变量定义 int a[3][2]={1,2,3,4,5,6},(*p)[2]=a;表达式**(p+2)=*p[2]的
设有变量定义 int a[3][2]={1,2,3,4,5,6},(*p)[2]=a;表达式**(p+2)的值?
设有定义语句“int a=10,*p=&a;”,则表达式“a+*p”的值是:
设有定义:int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p的值为(3)
设有定义:int a[2][2]={1,2,3,4},(*p)[2];,则在语句p=a;p++;后,**p的值为()
设有变量定义int a[ ]={1,3,5,7,9,11,13},x,*p=a+2,在下列表达式中,能使变量x的值为5的
定义 int a[]={1,2,3,4,5,6} ,*p=a;表达式 ++(*++p) 的值是____________.
定义int a[ ]={1,2,3,4,5,6},*p=a;表达式(*++p)++的值是________.
若有以下定义,“int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a”,则值为6的表达式是
设有说明”static int a [3][3]={{1},{4,5},{7,8,9}},*p=a[2];”,则*(p-
若有以下定义:int a[]={3,4,5,6,7,8,9,10,11},*p=a; 则值为5的表达式是( ).