Nous aurions pu utiliser notre fonction cube_nombre
ainsi :
#include <iostream.h> int nombre = 15; int cube_nombre(void) { return nombre * nombre * nombre; } main() { cout << cube_nombre(); return 0; }
Observons bien la notation cube_nombre()
qui a remplacé le produit précédent. Elle indique au programme dappeler la fonction cube_nombre, sans arguments, et de remplacer cube_nombre()
par le résultat renvoyé par cette fonction.
Lorsque le programme arrive sur un appel de fonction comme celui-ci, qui se distingue dune variable par les parenthèses qui le suivent, il se « déroute », et continue son exécution à lintérieur de la fonction, jusquà ce quil y rencontre une instruction return, qui lui fournit la quantité recherchée ; le programme revient alors à l'instruction suivant l'appel de fonction, remplaçant cet appel par la quantité renvoyée, et continue lexécution normalement. On peut représenter ce fonctionnement par un petit schéma ; les flèches indiquent dans quel sens lexécution du programme se déroule.
Une fonction peut aussi être appelée seule dans une instruction. Dans ce cas, sa valeur de retour est ignorée.
![]() | ![]() | Suivant ![]() |