欢迎光临
我们一直在努力

学习c语言第30天 自定义函数,指针的用法,醋和酱油互换

学习了自定义函数,终于可以和指针联系在一起了。

写两数互换时,我就在想为什么这里需要用指针,而在前一段时间学的函数里不需要。

后来才明白,当需要跟改实际参数的时候,形式参数才需要地址,因为只有在同一个房间里才能进行替换,如果房间都不一样就无法替换。

有些时不需地址,因为不需要跟改实际参数,只是在使用他,有得到了一个新的东西。

#include<stdio.h>
//醋和酱油的互换
//如果不加指针 ,相当于把ab的实参拷贝到形参里,更改ab的形参不会影响ab的实参
//当加上指针,相当于一个镜像 把ab的形参改了 ,实际也会发生变化
void Swap(int* x,int* y)//这里是ab的形参 (形式参数)
{
int z=*x;//z=a
*x=*y;//a=b
*y=z;//b=a
//return(x,y);//错误return只能返回一个变量
}
int add(int x,int y)//不需要地址的原因 ,不需要改变实际参数
{
int f=0;
f=x+y;
return f;
}
int main()//这里是ab的实参 (实际参数)
{
printf("互换前\\n");
int a=0;
int b=0;
scanf("%d %d",&a,&b);
int c=add(a,b);
printf("%d\\n",c);
printf("a=%d b=%d",a,b);
Swap(&a,&b);// 有指针时必须加&
printf("互换后\\n");
printf("a=%d b=%d",a,b);

return 0;
}

赞(0)
未经允许不得转载:171主机测评 » 学习c语言第30天 自定义函数,指针的用法,醋和酱油互换
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址