Per stampare: Clicca qui oppure seleziona File » Stampa nel menù del tuo browser.
-----------------------------------------------------------------------------------------------
Questo intervento è stato stampato da Guide di Dada.Net
raggiungibile a http://guide.dada.net
-----------------------------------------------------------------------------------------------
By Fortran di Giuseppe Ciaburro
URL: http://guide.dada.net/fortran/interventi/2001/09/67727.shtml
Fortran di Giuseppe Ciaburro guida dal 04-06-2002
L'istruzione dichiarativa COMMON
Un ulteriore meccanismo
che in FORTRAN consente di realizzare una comunicazione tra programma chiamante
e programma chiamato è costituito dall'istruzione COMMON. Questa istruzione
assegna la stessa area di memoria, detta COMMON-area, a due o più variabili
usate in diversi sottoprogrammi.
La sua sintassi è la seguente:
istruzione-dichiarativa-common = "COMMON" ["/"nome"/"] lista-var" {"/"nome"/"lista-var }.
dove nome è il
nome scelto per designare la COMMON-area e lista-var contiene liste di variabili
condivise. L'istruzione COMMON va posta fisicamente all'inizio del programma,
insieme alle altre istruzioni dichiarative.
La condivisione delle variabili in una COMMON-area è realizzata ponendo una
istruzione COMMON con la specifica dello stesso nome-blocco nel programma chiamante
e in uno o più sottoprogrammi chiamati. Nelle istruzioni COMMON che si riferiscono
alla stessa COMMON-area, le variabili specificate devono in genere corrispondere
in numero e tipo. Tuttavia sono possibili anche usi diversi dell'istruzione
COMMON che in questa dispensa non vengono esaminati. La COMMON-area viene strutturata
a blocchi ed a ogni blocco corrisponde una propria lista di variabili.
Il nome del primo blocco può non essere presente. In tal caso per la prima lista
di variabili viene riservata la porzione iniziale della COMMON-area. Per esempio,
se nel programma principale compare la seguente:
COMMON / NOME/ A,B,C
in uno o più sottoprogrammi, ad esso correlati, potremmo avere:
COMMON /NOME/ X,Y,Z
l'effetto è la condivisione della stessa area di memoria per le variabili A,B,C del programma principale rispettivamente con le variabili X,Y,Z del programma chiamante, considerando tutte le variabili dichiarate implicitamente di tipo reale. Nel caso in cui si usi un solo blocco è possibile ometterne il nome e quindi nel caso dell'esempio precedente è possibile usare la seguente forma abbreviata:
COMMON A,B,C
COMMON X,Y,Z
Nel caso di dati strutturati, si può usare l'istruzione COMMON sia per dichiarare un vettore che per definire la sua appartenenza alla COMMON-area; per esempio: COMMON A(30,5) è equivalente a REAL A(30,5) COMMON A Se una variabile di tipo strutturato compare con il suo dimensionamento in una istruzione COMMON esse non deve essere ridichiarata.