Table des matières indexe chapitre suivant

Chapitre 6 : Déclarations de sous­programmes

Tables des matières


0. Introduction

La déclaration d'un sous-programme comprend l'en­tête du sous-programme et le corps du sous-programme.


1. Diagramme syntaxique

partie déclaration de procédures et de fonctions :
en-tête :
identificateur de type ne peut pas désigner un type structuré en PASCAL standard ( Turbo-PASCAL autorise également les types string).
Le mot réservé procedure ou function doit être répété pour chaque déclaration de procédure ou de fonction (contrairement aux étiquettes, types et variables).


liste des paramètres formels :

2. Sous­programmes mutuellement récursifs

Tout sous­programme doit être déclaré avant d'être utilisé. Pour des sous­programmes mutuellement récursifs, c'est­á­dire pour des programmes qui s'appellent l'un l'autre (cfr Ch 14), il est impossible que la déclaration de chacun d'entre eux apparaisse avant l'appel. Ce problème est résolu par l'usage d'une directive forward (une directive fournit une indication au compilateur).

La déclaration de la procédure est scindée en deux parties : une annonce qui doit apparaître avant le premier appel du sous-programme et la déclaration annoncée. Dans la déclaration annoncée, les paramètres du sous­programme ne figurent pas; ils apparaissent seulement dans l'annonce.

annonce :
déclaration annoncée :

Exemple

    ...
    procedure P1 (x : integer); forward; {annonce}

function P2 (y : real) : Boolean; ... begin ... P1(3); ... end;

procedure P1; {déclaration annoncée : pas de liste de paramètres} ... var a : real; ... begin ... if P2(a) then ... ... end; ...


Table des matières indexe chapitre suivant