指针返回值不知道合不合法,大家帮忙看看
不是说指针不能返回值,函数结束指针地址就指向未知数。我定义指针能返回值不知道是不是合法的。我把最大值地址返回去,在主函数输出,可以得到最大值int main()
{
float a,b,*p=&a,*p1=&b;
float *value(float *x,float *y);
while(scanf("%f%f",&a,&b)!=EOF)
{
printf("max=%2.f\n",*value(p,p1));
}
return 0;
}
float *value(float *x,float *y)
{
float temp;
if(*x>*y)
{
temp=*x;
*x=*y;
*y=temp;
}
printf("max=%2.2f min=%2.2f\n",*y,*x);
return y;
}