函数返回值也可以返回指针
double*Show(double);
{
printf(“数值:%lf\n”,n);
return &n;
}
double d=45.6;
double*p=Show(d);
printf(“d的地址=%d\n”,&d);
printf(“p=%d\n”,p);
此下为错误示范
*p=456.7修改的是形参n
printf("*p=%lf\n",*p);
不会报错,无法返回
intswapPlus(intpa,int*pb)
{
int temp=*pa;
*pa=*pb;
*pb=temp;
return pa;
}
int main()
{
int *p1=swapPlus(&a,&b);
*p1=789
(此时a被改为789)
函数不能返回数组
int[7] hello()
{
int arr[]={1,2,3,4,5,6,7};
return arr;
}
int *arr hello()
{
int arr[ ]={1,2,3,4,5,6,7};
return arr;数组名就是地址
}
int *p2=hello同样不合理,arr已经被回收了,再去操作p2,被其他内容替代