Previous Page Next Page

5.3 La structure d'un programme Turbo-Pascal

Tout programme Turbo-Pascal doit être structuré de la manière suivante:

< program >
::= < program heading >< uses clause >< block > "."

< program heading >
::= PROGRAM < identifier >< program parameters > ";"

< uses clause >
::= < empty > | USES < identifier > { "," < identifier > } ";"

< program parameters >
::= < empty > | "(" < file identifier > { "," < file identifier > } ")"

La forme normale de Backus-Naur (BNF) étant très rigoureuse, mais parfois un peu difficile à lire, nous décrirons les structures Turbo-Pascal parfois d'une manière simplifiée mais plus lisible:

PROGRAM < identifier > [ < program parameters > ];
[ < uses clause > ]
< block >.

Dans cette notation, les unités syntaxiques entre crochets [ . . . ] sont optionnels.

Le programme principal [angl. main program; all. Hauptprogramm] se compose d'un entête [angl. program heading], d'une clause USES optionnelle et du bloc principal [angl. program bloc; all. Programmrumpf].

Dans un programme Turbo-Pascal, seules les instructions du programme principal sont exécutées, y compris les appels éventuels de procédures et de fonctions. Toutes les étiquettes et tous les identificateurs de constantes, de types, de variables, de procédures et de fonctions doivent être définis avant leur utilisation à une exception près. Le type de référence d'un type pointeur peut être un identificateur non encore déclaré. Cependant, cet identificateur doit être déclaré dans la même partie de déclaration de types que le type pointeur. Par exemple:

TYPE List = ^Node;
Node = RECORD
Info: Integer;
Next: List;
END;

Chaque procédure et fonction possède une structure similaire à celle du programme principal (à l'exception de la clause USES), c'est-à-dire chacune d'elles se compose d'une entête et d'un bloc (bloc procédure, bloc fonction).

Previous Page Next Page


© Aflo Informatique , 2003-2004