您的位置 首页 技术

函数传参的三种方式

函数传参的三种方式 1、按值传递,传递时形参和实参各占一个独立空间。 2、地址传递,是把实参的储存地址传送给形参。 3、引用传递,是以引用为实参的别名,和实参是同一个变量。 示例代…

函数传参的三种方式

1、按值传递,传递时形参和实参各占一个独立空间。

2、地址传递,是把实参的储存地址传送给形参。

3、引用传递,是以引用为实参的别名,和实参是同一个变量。

示例代码

按值传递

#include<stdio.h>void swap1(int x, int y)//定义中的x,y变量是swap函数的两个形参{int tmp;tmp = x;x = y;y = tmp;printf("x=%d,y=%d\n", x, y);}int main(){int a = 2;int b = 3;swap1(a, b);//a,b变量为swap函数的实际参数printf("a=%d,b=%d", a, b);return 0;}

地址传递

void swap2(int *px, int *py){int tmp;tmp = *px;*px = *py;*py = tmp;printf("px=%d,py=%d\n", *px, *py);}int main(){int a = 2;int b = 3;swap2(&a, &b);/*调用了swap函数,同样也有隐含动作px=&a;py=&b;*/printf("a=%d,b=%d", a, b);return 0;}

引用传递

#include<stdio.h>void  swap3(int &x,int &y){int tmp = x;x = y;y = tmp;printf("x=%d,y=%d\n", x, y);}int main(){int a = 2;int b = 3;swap3(a, b);//调用方式与传值一样printf("a=%d,b=%d", a, b);system("pause");return 0;}

推荐教程:《C#教程》

以上就是函数传参的三种方式的详细内容,更多请关注24课堂在线网其它相关文章!

本文来自网络,不代表24小时课堂在线立场,转载请注明出处:https://www.24ketang.cn/67667.html

为您推荐

返回顶部