Maison  >  Article  >  Trois façons de passer des paramètres à une fonction

Trois façons de passer des paramètres à une fonction

Guanhui
Guanhuioriginal
2020-06-02 15:52:365811parcourir

Trois façons de passer des paramètres à une fonction

Trois façons de transmettre les paramètres de fonction

1. Lors du passage, les paramètres formels et les paramètres réels occupent chacun un espace indépendant.

2. Le transfert d'adresse consiste à transférer l'adresse de stockage du paramètre réel vers le paramètre formel.

3. Le passage par référence est un alias avec une référence comme paramètre réel, qui est la même variable que le paramètre réel.

Exemple de code

Passez par valeur

#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;
}

Passez par adresse

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;
}

Passez par référence

#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;
}

Tutoriel recommandé : "Tutoriel C#"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn