看哪种好?

来源:百度知道 编辑:UC知道 时间:2024/05/28 15:57:19
“一般函数调用方法”和“通过指向函数的指针变量调用函数的方法。”
哪种好?
(1)一般函数调用方法:
main()
{
int i,m,a[10];
for (i=0;i<10;i++)
scanf("%d",&a[i]);
m=max(a);
printf("max=%d",m);
}
int max(int *p)
{
int i,t=*p;
for(i=1;i<10;i++)
if(*(p+i)>t) t=*(p+i);
return (t);
}
(2)通过指向函数的指针变量调用函数的方法
main()
{
int i,m,a[10],max;
int (*f)();
for (i=0;i<10;i++)
scanf("%d",&a[i]);
f=max;
m=(*f)(a);
printf("max=%d",m);
}
max(int *p)
{
int i,t=*p;
for(i=1;i<10;i++)
if(*(p+i)>t) t=*(p+i);
return (t);
}

2种好。通过指针可以是数据在内存中分开放。节省内存空间

各有用处,不能说哪种更好。

指针调用因为还需要通过指针取地址,所以速度可能没有直接调用快(相对而言)