关于指针转换的一个问题
void average(float *p,int n){
float *p_end,sum=0,aver;
p_end=p+n;
for(;p<p_end;p++)
sum=sum+*p;
aver=sum/n;
printf("%5.2f\n",aver);
}
void search(float (*p)[4],int n)
{
int i;
printf("NO.%d",n);
for(i=0;i<4;i++)
printf("%5.2f",*(*(p+n)+i));
}
main()
{
float score[3][4]={{65,67,79,60},{80,87,90,81},{90,99,100,98}};
average(*score,12);//为什么这里的score前可以加*,这里的score明明不是指针变量啊,难道在数组名前加*可以表示数组首地址?
search(score,2);//这里为什么是score表示,而不是*score表示啊???用*score表示会出现可疑指针转换的问题
}
请各位大虾帮帮我