Bonjours,j'ai un problème avec la création de fonction.Je n'arrive pas à comprendre à quoi sert "return" enfin plutot je n'arrive pas à comprendre qu'est ce qu'il fait.Pouvez vous m'aider svp
C'est ce que "retourne" la fonction. Quand la fonction s'arrête, elle revoie la valeur précédée de return.
Exemple:
// Fonction : son type est le type de ce qu'elle retourne. Ici un int. int somme(int a, int b) { return a+b; }
void main(void) { int resultat = 0, a = 4, b = 3; //on affecte à resultat ce que retourne la fonction somme, soit la some de a et b.
resultat = somme(a, b); printf("%d", &resultat);
getchar();
return0; // main n'a pas besoin de retourner une valeur, donc on lui fait renvoyer 0 }
L'exemple de remram est tout à fait adapté à ta situation et je pense que tu dispose des informations necessaires
En général un return sert aussi à indiquer si la fonction a "foiré" ou non.
Alors si j'ai bien tout compris "return" sert à marquer la fin de la fonction et aussi a renvoyer une valeur qui est utilisable dans les autre fonctions c'est sa?
Alors si j'ai bien tout compris "return" sert à marquer la fin de la fonction et aussi a renvoyer une valeur qui est utilisable dans les autre fonctions c'est sa?
ça...
Oui. Il est conseillé de n'avoir qu'un seul return par fonction et que celui-ci soit la dernière ligne de la fonction. Le code est plus clair...
La plupart des fonctions ont besoin de données pour pouvoir travailler : ceux sont les arguments.
Ils permettent à la fonction d'utiliser les variables qu'on lui envoie. Si on ne lui envoie pas d'arguments, la fonction fait toujours la même chose. Pour que la fonction "s'adapte" au programme, il faut qu'on puisse changer les valeurs qu'elle utilise. Exemple :
//Fonction qui renvoie toujours la même valeur : int volumeCarre1() { int volume = 10 * 10 * 10; return volume; }
//Fonction qui "s'adapte" au programme : int volumeCarre2(int cote) { int volume = cote * cote * cote;
return volume; }
Là, le main pourra appeller la fonction volumeCarre2 en lui envoyant une longueur de coté différente à chaque fois :
int volume_10cm = 0, volume_50cm = 0, volume_100cm = 0;
N'oublie pas que les paramètres doivent être des pointeurs si tu compte changer la valeur de variables. (les fonctions créent une sorte de copie de celles ci pour travailler)
Tu devrais être au point avec tout cela.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.