Maison > Problème commun > Trois façons de passer des paramètres à une fonction

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

Guanhui
Libérer: 2020-06-02 15:52:36
original
5875 Les gens l'ont consulté

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;
}
Copier après la connexion

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;
}
Copier après la connexion

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;
}
Copier après la connexion

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!

Étiquettes associées:
c
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal