Zusammengesetzte Datentypen

In vielen Programmiersprachen gibt es die Möglichkeit mehrere Variablen unterschiedlichen oder gleichen Typs zu einem Verbund zusammenzufügen. Dabei wird dem neuen Konstrukt ein Namen vergeben, unter dem neue Variablen deklariert werden können. Das ist auch in Fortran möglich, mit dem Schlüsselwort type.

Definition neuer Datentypen

Neue Datentypen werden folgendermaßen definiert:

type <name>
  <liste von Variablen>
end type

Wollen wir also bspw. ein Konstrukt erschaffen, welches Personendaten (hier Name, Telefonnummer (als Zahl) und Zimmernummer) erfasst, dann kann das folgendermaßen aussehen:

program main
  type person
    CHARACTER*20 name
    INTEGER tel, room
  end type
 
  ! anweisungen
end program

Deklaration von Variablen zusammengesetzten Typs

Um diese Definition nutzen zu können, müssen wie Variablen definieren, die diesen Datentyp haben. Das funktioniert, indem wir das Schlusswort type, dann in Klammern den Namen des neuen Datentyps verwenden:

  type(person) p1, p2;

Zugriff auf die Elemente

Der Zugriff auf die Elemente gestaltet sich durch den % Operator:

  p1%name = "Mueller"
  p1%tel = 123456789
  p1%room = 307
 
  write (*,*) "IM ", p1%name, " sitzt in Zimmer ", p1%room

Setzen der Elemente

Es ist mögliche die Elemente des Typs mit einem Mal zu setzen. Dazu muss der Name des Datentyps angegeben werden und die Elemente in der Reihenfolge der Deklaration, bspw:

  p1 = person ( "Mueller", 1234567, 307 )