返回狼盟编程首页
编程搜索 [狼盟旧档]
论坛统计


请输入搜索关键字:
├─◆ 狼盟首页 > 查看贴子 > 详细信息

楼主

函数的调用


#define MAX 3int a[MAX];main(){fun1 ();fun2(a);printf("
");}fun1 (){int k,t=0;for(k=0;k<MAX;k++,t++)a[k]=t+t;}fun2(int b[]){int k;for(k=0;k<MAX;k++)printf("%d",*(b+k));}为什么输出的结果是024?





户注 [ 1 楼 ]
2006-05-31 22:31:00
fun1( )里给数组赋值,a[k]=t+t,函数1里t应该是多余的吧,t==kfun2( )把数组输出,传入a 

关浩 [ 2 楼 ]
2006-06-02 06:53:00
fun1( )里给数组赋值,赋值后a[3]={0,2,4};fun2( )采用值调用令b[3]=a[3]={0,2,4};*(b+k)相当于&b[k],即输出b[0],b[1],b[2] 

liujiwei [ 3 楼 ]
2006-06-02 10:31:00
a[0] = 0 + 0a[1] = 1 + 1a[2] = 2 + 2你的代码写的很不规范啊不过比我写的要规范很多 

冷月星光 [ 4 楼 ]
2006-06-02 12:16:00
fun1 (){int k,t=0;for(k=0;k<MAX;k++,t++)a[k]=t+t;__________________a[0]=0+0=0;a[1]=1+1=2;a[2]=2+2=4;fun2(int b[]){int k;for(k=0;k<MAX;k++)printf("%d",*(b+k));}_____________________024其实分别是数组中的第一个第二个和第三个元素的值