首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

这个程序如何执行的

2012-05-01 
这个程序怎么执行的?#includestdio.hint arry[5][5]{{2,4,6,8,10},{10,12,14,16,18},{18,20,22,24,26},

这个程序怎么执行的?
#include<stdio.h>
int arry[5][5]={
{2,4,6,8,10},
{10,12,14,16,18},
{18,20,22,24,26},
{26,28,30,32,34},
{34,36,38,40,42},
}; 
void main()
{
int i,(*Point)[5]; 
for(i=0;i<4;i++)
{
Point=arry+i; 
printf("%d\t",*(Point[i]+2)); 
}
printf("\n"); 
}
请问这个程序的结果为什么是:6 22 38 4334040?

[解决办法]
void main()
{
 int i,(*Point)[5];
for(i=0;i<4;i++)
 {
 Point=arry+i; //等同于 Point=&arry[i];
printf("%d\t",*(Point[i]+2)); //等同于 *(arry[i+i]+2) arry[2*i][2];
}
 printf("\n");
}
所以 结果是
arry[0][2] == 6
arry[2][2] == 22
arry[4][2] == 38
arry[6][2] ==???//未定义行为..出现值不可知不可预料

热点排行