12. Sous-programmes Les sous-programmes offrent au programmeur un moyen pour réalisation des modules de programme qui sont relativement indépendants. Chaque module réalise une tâche parfaitement définie. Les sous-programmes peuvent être développés, vérifiés et testés séparément. Une fois écrit et mis au point, un sous-programme pourra être considéré comme une ``boîte noire'', dont on n'aura à connaître que le nom (symbolisant le calcul réalisé), et les paramètres d'entrée et de sortie. Par exemple la fonction sin(x) de la bibliothèque math.h. exige un paramètre d’entrée x de type double / un angle en rad/ et évalue sinus de cet angle. Le moyen du calcul reste caché. On peut définir les sous-programmes comme sous-programmes - fonctions et sous-programmes - procédures. Les fonctions évaluent et retournent après l’exécution seulement une valeur. Les procédures évaluent et retournent quelques résultats ou ne retournent pas des résultats. Le programmeur doit préciser le but du sous- programme et le définir comme fonction ou comme procédure. 12.1. Sous-programmes-fonctions • Définition de fonction La forme générale d’une définition de la fonction est la suivante: type de résultat ааа nom_de_la_fonction(définitions_de paramètres_formels) { аааа instruction1; аааа instruction2; аааа ... ааaa return expression; } Les paramètres formels représentent les données d'entrées" de la fonction. Ils doivent être accompagnés de leur type. Ils ne servent que de définition /leur nom peut être réutilisé sans ambiguïté dans un autre contexte/. L'affectation d'une valeur de retour par l'opérateur return est obligatoire. L'instruction return expression; possède en effet deux rôles: elle interrompt l'exécution de la fonction et retourne l'execution au programme ou sous-programme appelant. • Appel d’une fonction pour exécution La fonction est appelée pour exécution dans une expression, où la valeur du résultat évalué est utilisée. La forme générale de l’appel de la fonction est la suivante: nom_de_fonction (paramètres réels) Les paramètres réels sont des arguments d'entrés avec lesquels on doit exécuter la fonction. |