当前位置: 代码迷 >> C语言 >> [求助] 有关指针的错误
  详细解决方案

[求助] 有关指针的错误

热度:162   发布时间:2006-08-10 10:17:38.0
以下是引用张含韵在2006-8-10 9:00:04的发言:

#include <stdio.h>
#include <stdlib.h>
void search(float *p,int n)
{

int i;
printf("the scores of NO.%d\n",n);
for (i=0;i<3;i++)
printf("%4.2f\t",*(*(p+n)+i)); \\就是这个地方。
}

main()
{

float score[3][3]={{65,67,69},{80,86,84},{50,90,76,}};
search(*score,2);=====>应该改成sorce,因为传送的是数组名的首地址!
system("PAUSE");

}
小女子先谢谢了~~



----------------解决方案--------------------------------------------------------
因为你实参(*score)传递的是一个列地址,表示0行0列;你自己写的函数里把p当作是指向行地址了

void search(float *p,int n)
{

int i;
printf("the scores of NO.%d\n",n);
for (i=0;i<3;i++)
printf("%4.2f\t",*(p+3*n+i)); \\这里改下应该可以了
}
----------------解决方案--------------------------------------------------------

  相关解决方案