关于指针的
#include<stdio.h>int find_larg(int *);
void main()
{
int arr1;
int i,larg_num;
printf("\n请输入5个整数:\n");
for(i=0;i<=4;i++)
{
scanf("%d",&arr1);
}
larg_num=find_larg(arr1);
printf("\n最大的数是:%d\n",larg_num);
}
int find_larg(int *ptr)
{
int larg=*ptr;
int i;
ptr++;
for(i=1;i<=4;i++)
{
if(larg<*ptr)
{
larg=*ptr;
}
ptr++;
}
return larg;
}
我想问的是,在下面的自定义函数里面并没有像这样赋值 ptr=arr1,那到底指针*ptr是怎么跟数组构成了联系呢? 汗……我猛烈汗……
larg_num=find_larg(arr1);
请注意find_larg的原型:
int find_larg(int *ptr);
因而,你上面那句把arr1传入了find_larg,在find_larg中作为第一个参数,按照原型的声明这个参数名称就是ptr。
页:
[1]