16. LA LINKAGE SECTION

Le programme principal et le sous-programme COBOL étant compilés séparément, il est nécessaire que la description des zones de données communes apparaisse dans les DATA DIVISION respectives des programmes.

Mais il est exclu de réserver 2 fois ces zones en mémoire centrale, c’est pourquoi une LINKAGE SECTION a été créée en DATA DIVISION.

Une zone de données commune “TRANSFERT” sera donc décrite normalement dans le programme principal soit en FILE SECTION soit en WORKING-STORAGE SECTION, et sa correspondance dans le sous-programme en LINKAGE SECTION.

L’ordre d’appel de sous-programmes CALL, aura donc pour effet d’attribuer les mêmes adresses mémoire à ces deux zones de données.

Remarque : rien n’oblige le programmeur à utiliser des descriptions de zones rigoureusement identiques entre le programme principal et le sous-programme. Les noms ne doivent pas être les mêmes ainsi que les descriptions de données.

La terminaison d’un sous-programme :

Dans un sous-programme, la terminaison est réalisée par GOBACK.