ホームページ  >  記事  >  関数にパラメータを渡す 3 つの方法

関数にパラメータを渡す 3 つの方法

Guanhui
Guanhuiオリジナル
2020-06-02 15:52:365811ブラウズ

関数にパラメータを渡す 3 つの方法

関数パラメータを渡す 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# チュートリアル》

以上が関数にパラメータを渡す 3 つの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。