下列4个选项中,哪个结果为6? int a[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, *p = a;
int a[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, *p = a; (A) *p + 6; (B) *(p+6); (C) *p += 5; (D) p+5; 答: A B 求解释
人气:118 ℃ 时间:2020-04-08 19:03:32
解答
这个是指针指向的问题.*p=a,是定义个p指针,指向了数组a.那么p指向的也可以看成是指向a[0],对于答案B很好理解了,p+6指向的实际也就是a[6],再用*取值,答案就是6.对于A,则很简单啊,*p+6也就是先取p的值,再对这个值+6.p指向a[0],a[0]值是0,再0+6结果当然也是6了
推荐
- 6. 如果有以下定义:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[7];则表达式*p++的值是多少?
- 有如下程序c
- 若有以下定义:int a[]={1,2,3,4,5,6,7,8,9,10},*p=a; 则值为3的是( )A、p+=2;*(p++);B、p+=2;*++p;
- 若有以下定义:int a[]={1,2,3,4,5,6,7,8,9,10},*p=a; 则值为3的是( )
- 10.已知int a[3][3]={ 1,2,3,4,5,6,7,8,9};,则*(*(a+2)+1) 的值是___________.
- need引导的一般疑问句能用do not have to来回答吗
- 英语单词总是记不住拼写和意思?
- 一个数的四次方怎么打
猜你喜欢