77问答网
所有问题
以下程序结果是 main() {int a[]={1,2,3,4,5}; int *p=a; printf("%d",*(++p)); }
如题所述
举报该问题
推荐答案 2012-06-21
结果:2
main()
{
int a[]={1,2,3,4,5};
int *p=a;//a是数组名 表示的是数组首元素的地址 这时候p=&a[0];
printf("%d",*(++p));//p的基类型为
整型
,p+1相当于加四个字节 就指向了数组的第二个元素
}
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/WWvqWYW83.html
其他回答
第1个回答 2012-06-21
2
相似回答
...
{int
a[
5
]={1,2,3,4,5};int
*p=a;
printf(
"a=
%d
",*(p+5
));
}不确...
答:
因为C语言数组下标是从0开始计数的。定义数组
int
a[5],指定数组a有5个元素,这5个元素从a[0]到
a[4]
。程序中*(p+
5),
实际上
是a[5],
指向数组的第6个元素。但是数组a没有第六个元素,*(p+5)这个引用超界了。这种超界,C语言不给出任何提示。
int
a[]={1,2,3,4,5};
int
*p=a;
printf(
"
%d
\n",*p
);
为什么
结果是
1呢...
答:
(++p)中++p自加
1,
变为坐标为1的元素
,a[
1]=*(++p)=2;p此时也指向a[1]的
,*p=2;
int
a[] = {1,2,3,4,5,};
int
*p = a;
int *q = &a[
5];
printf(
"
%d
...
答:
看看我下面的演示,你就知道那只是个巧合而已(5并不是数组里面的数字哦,两个地址差,16进制地址相减
结果是
0x14,换算成十进制就是20
,int
每个占4byte,所以20/
4=5)
:
main( )
{int
a[ ]={1,2,,3,4,5,
6,7,8,9,0
},*p
;
p=a;
printf(
"%x\n...
答:
我的
结果是
(每个电脑的结果有可能不一样):12ff58 12ff7c 你的程序应该是:include <stdio.h> void
main( ){ int
a[]={1,2,3,4,5,
6,7,8,9,0
},*p
;
p=a;printf(
"%x\n",p);printf("%x\n",p+9)
;}
程序
注释:p指针指向数组a,那么p就是数组a的起始地址12ff58,那么p+9就是...
main()
{ int
a【】
={1,2,3,4,5,
6,7,8,9,0
},*p
;
p=a;
printf(
"
%d
\n...
答:
printf(
"%d\n",p); //输出的是第
一
个元素a[0]的地址,怎么可能
是2
呢?printf("%d\n",p+9); //输出的是第一个元素a[9]的地址,怎么可能是4呢?//元素地址由操作系统管理,这个值不确定。
main(){int
a[]={1,2,3,4,5,
6,7,8,9,0
};*p
;for
(p=a;
p<a+10;p++)print...
答:
printf(
"%d"
,*p)
;} 你这个i 很莫名其妙啊 上面的程序等同于下面这个
程序
int
a[]={1,2,3,4,5,
6,7,8,9,0
};int
i;for(i=0;i<10;i++
){
printf("%d",a[i]);} for
(p=a ;
p<a+10;p++)p=a这个意思是 首先 指针p 指向a的首地址 意思是 *p带代替 a[0] ;p++ 比如...
main()
{int
a[10
]={1,2,3,4,5};
printf(
"
%d
\n"
,a[
6]);}输出的
结果是
...
答:
运行结果为0 LZ可以在编程软件中,如visual C++,中可得到该结果。因为a[10]是一个数组,从0开始赋值,第0个数,即a[0]为
1,
第1个数a[1]为
2,
依次类推
,a[4]=5,
而
a[5
]之后到a[9]没有给它赋值,它只好为0,可以理解为1楼所说的初始化,也可理解为相当于为假。不过,要注意,若说...
大家正在搜
相关问题
以下程序的输出结果:main(){int a[5]={1,2...
int a[3][2] = { 1,2,3,4,5,6 },...
{ int a[]={1,2,3,4,5,6};int *p...
下面程序运行结果是( )。 main( ) { int a[...
4、 以下程序的输出结果是main( ){ int k=17...
int a[] = {1,2,3,4,5,}; int *p...
int a[]={1,2,3,4,5}; int *p=a;...
main() { int a={1,2,3,4,5}; pr...