读书人

新手学指针帮忙改下错解决办法

发布时间: 2012-04-07 17:31:52 作者: rapoo

新手学指针,帮忙改下错
#include <stdio.h>

int array_sum(int (*arr)[2]);
int point1(int *p);
int point2(int **p);

int main()
{
int a[3][2]={{1,2},{3,4},{5,6}};
int sum=0;

sum=array_sum(a);
printf("用数组法和为%d\n",sum);

sum=point1(a[0]);
printf("用一级指针法和为%d\n",sum);

sum=point2(a);//编译器提示这里有错
printf("用二级指针法和为%d\n",sum);

return 1;
}

int array_sum(int (*arr)[2])
{
int i,j,sum=0;

for(i=0;i<3;i++)
for(j=0;j<2;j++)
sum+=arr[i][j];
return sum;
}

int point1(int *p)
{
int i,sum=0;

for(i=0;i<6;i++)
sum+=*p++;
return sum;
}

int point2(int **p)
{
int i,sum=0;

for(i=0;i<6;i++)
sum+=**p++;
return sum;
}


还有个问题,题目要求是用二级指针法求和,我的point2函数算不算用二级指针求和呢

[解决办法]
http://www.cnblogs.com/chenbin7/archive/2011/10/03/2198675.html
楼主看看这个,有图有真相,希望对你有所帮助

读书人网 >C语言

热点推荐