next up previous contents
Next: Podmíněné příkazy Up: Fortran 77 a jeho hlavní Previous: Pole   Obsah

Symbolická jména

Jména konstant, proměnných, polí, vnitřních a externích funkcí, procedur a sdílených bloků dat musí začínat písmenem a pokračovat maximálně pěti písmeny nebo číslicemi. Fortran 77 tedy dovoluje např.

\begin{eqnarray*}
\mbox{\tt PSI~~~~~~~I~~~~~~~~MATICE~~~~~~~~VOLTY~~~~~~~~H2SO4~~~~~~~~OUTPUT}
\end{eqnarray*}



Napoak za neplatná jména jsou (nebo by alespoň měly být) považovány výrazy
FRANTISEK         (příliš dlouhé)
JANA_B (obsahuje podtržítko)
Vyska (obsahuje malá písmena)
2PI (začíná číslicí)
Limit šesti znaků pro symbolické jméno je po pevném tvaru zdrojového kódu zřejmě nejzastaralejším prvkem Fortranu 77.2 Jeho nedodržování je však velice nebezpečné: Většina systémů sice dovoluje názvy proměnných delší, ale některé z nich písmena od sedmého dále prostě ignorují. To má sice na první pohled pozitivní vliv na přehlednost zdrojového kódu, ale - jak jistě pozorný čtenář tuší - chceme-li na takovéto platformě použít dvě různé proměnné se jmény řekněme TEMPERED a TEMPERATURE, výsledky zcela předčí našo očekávání.

Podstatně příjemnějším trikem Fortranu je implicitní nastavení typu proměnné na základě počátečního písmene jejího jména. Konkrétně:

První písmeno jména Implicitní typ
A H REAL
I N INTEGER
O Z REAL
Díky tomu se ve fortranských zdrojových kódech často setkáváme s poněkud bizarními jmény jako

\begin{eqnarray*}
\mbox{\tt NYEARS~~~~~~~ISIZE~~~~~~~~RIMAGE~~~~~~~~KOUNT}
\end{eqnarray*}



Chceme-li deklarovat proměnnou jiného typu, použijeme běžných konstrukcí

      INTEGER POCET
      REAL ZAHON(10,5)
      CHARACTER JMENO*(20)
Změnu implicitního nastavení umožňuje příkaz IMPLICIT, např.

      IMPLICIT DOUBLE PRECISION (D,X-Z)
Většina systémů dovoluje i konstrukci

      IMPLICIT NONE
takže potom překladač vyžaduje deklaraci každé použité proměnné.


next up previous contents
Next: Podmíněné příkazy Up: Fortran 77 a jeho hlavní Previous: Pole   Obsah
Pavel Vachal
2001-05-31