Quand mettre le "&" dans les param fonctions
Résolu/Fermé
yaorens
Messages postés
205
Date d'inscription
dimanche 5 avril 2009
Statut
Membre
Dernière intervention
30 mai 2013
-
12 août 2012 à 22:24
Utilisateur anonyme - 13 août 2012 à 09:48
Utilisateur anonyme - 13 août 2012 à 09:48
A voir également:
- Quand mettre le "&" dans les param fonctions
- Ces codes secrets vous donnent accès aux fonctions cachées de votre smartphone Android - Accueil - Android
- Codes secrets Android : accéder aux fonctions cachées - Guide
- Fonction remplacer dans word - Guide
- Fonction ou dans excel - Guide
- Les fonctions excel en anglais - Guide
2 réponses
Love_Metal
Messages postés
118
Date d'inscription
vendredi 10 août 2012
Statut
Membre
Dernière intervention
2 février 2014
14
12 août 2012 à 22:34
12 août 2012 à 22:34
Bonjour,
Le '&' qui précède une variable signifie l'adresse de cette variable.
Il faut mettre un '&' avant le nom d'une variable dans une fonction si :
-la fonction prend un pointeur de variable et que tu n'as qu'une variable simple à lui envoyer.
-la fonction prend un double pointeur et que tu n'as qu'un pointeur à lui envoyer.
Le '&' qui précède une variable signifie l'adresse de cette variable.
Il faut mettre un '&' avant le nom d'une variable dans une fonction si :
-la fonction prend un pointeur de variable et que tu n'as qu'une variable simple à lui envoyer.
-la fonction prend un double pointeur et que tu n'as qu'un pointeur à lui envoyer.
Utilisateur anonyme
Modifié par griviere42 le 13/08/2012 à 09:48
Modifié par griviere42 le 13/08/2012 à 09:48
Bonjour,
je confirme ce que dit Love_Metal et j'ajouterai qu'en faisant un passage par adresse, tu ne réalise pas de copie de la variable. Donc la variable que tu modifie dans la fonction via son adresse et la même que celle crée avant l'appel.
Exemple
void ajout(int *pointeur)
{
(*pointeur )++;
}
main(/*argc, argv, et cie*/)
{
int mavariable = 1;
ajout(&mavariable)
printf("%d", mavariable);
}
Le programme affiche:
2
Besoin d'aide? Dispo pour C/C++/PhP/Html5/Css3, et des bases en js, en webmatering divers et Linux
je confirme ce que dit Love_Metal et j'ajouterai qu'en faisant un passage par adresse, tu ne réalise pas de copie de la variable. Donc la variable que tu modifie dans la fonction via son adresse et la même que celle crée avant l'appel.
Exemple
void ajout(int *pointeur)
{
(*pointeur )++;
}
main(/*argc, argv, et cie*/)
{
int mavariable = 1;
ajout(&mavariable)
printf("%d", mavariable);
}
Le programme affiche:
2
Besoin d'aide? Dispo pour C/C++/PhP/Html5/Css3, et des bases en js, en webmatering divers et Linux