Perl Programmierung - Grundkurs
$y;
Skalare Variablen
Sie dienen dazu, einen einzigen Wert aufzunehmen. Der aufgenommene Wert kann eine Zahl oder eine Zeichenkette sein.
Eine skalare Variable wird durch das $-Zeichen identifiziert. Als Namensregel gilt: der Variablenname beginnt mit einem Unterstrich oder mit einem Buchstaben. Danach folgen beliebig viele Buchstaben, Unterstriche oder Ziffern. Die maximale Länge eines Namens kann 32 Zeichen überschreiten. Es wird zwischen Gross- und Kleinschreibung unterschieden.
Die Definition der Variablen erfolgt durch eine erste Zuweisung, wie in den folgenden Beispielen:
$hausnummer = 1;
$strasse = 'Anhalter Strasse';
$adresse = "Das PC-College liegt in der $strasse mit der Nr. $hausnummer.";
In einem Perl-Script könnten die Variablen zum Beispiel so eingesetzt werden, dass der Text "Das PC-College liegt in der Anhalter Strasse Nr. 1" ausgegeben wird.
Die Variablen-Definition sollte besser mit einem einleitenden my vorgenommen werden, wie in:
my $var = 1
Die Variable hat dann eine beschränkte Sichtbarkeit, grob gesagt bis zur nächsten schliessenden geschweiften Klamer. Diese Art von Variablen heisst lexikalisch, weil Sie allein aus dem Programmtext schliessen können, wo die Variable sichtbar ist. Das ist in modernem Perl die bevorzugte Art, eine Variable anzulegen.
Ein Anschauungsbeispiel zum ausprobieren:
(Nach dem Block in den geschweiften Klammern ist die erste Varible wieder sichtbar, mit dem Wert, den sie vor dem Block hatte).
Ein weiteres Beispiel zu Skalaren, diesmal unter Verwendung von my :
my $Vor_Name = "Barbara-Clarissa"; # Ihr Vorname
my $Nach_Name = "Hohensee"; # Ihr Nachname
my $pi = 3.14159;
Rechenergebnisse in Skalare abspeichern
Das Ergebnis der Rechenoperation 4 +5 soll in einer Variablen gespeichert werden:
my $ergebnis = 4 + 5;
Der Wert, der sich jetzt in der Variablen befindet soll weiterverarbeitet werden:
my $enderbnis = $ergebnis – 1;
Es können auch die gleichen Variablen sowohl auf der rechten wie auf der linken Seite stehen:
my $zahl = 0;
my $zahl = $zahl + 2;
Eine Zuweisung beschreibt einen zeitlichen Ablauf. Zuerst wird die rechte Seite ausgewertet, dann das Ergebnis nach links transportiert.
Um den Wert einer Variablen um 1 zu erhöhen schreibt man:
++$zahl
Um den Wert einer Variablen um 1 zu verringern schreibt man:
--$zahl
Undefinierte Variablen
Wird eine Varible eingesetzt, ohne dass sie mit einer ersten Zuweisung initialisiert wurde, enthält sie automatisch den Wert 0 bzw. die leere Zeichenkette.
Da solch eine Situation, beispielsweise durch Tippfehler verursacht, zu Problemen führen kann, sollten Sie immer die Option –w beim Aufruf des Perl-Interpreters mit angeben.
Daneben existieren in Perl sowohl eine Funktion defined, mit der getestet werden kann, ob eine Variable bisher undefiniert ist, als auch die Funktion undef, mit der eine Variable wieder in den undefinierten Zustand zurückgesetzt werden kann:
Einsatz von defined und undef
#!C:\perl\bin\perl.exe –w
if(!defined $var)
{
print "nicht def.\n";
}
else
{
print "definiert\n";
}
$var = 99;
if(!defined $var)
{
print "nicht def.\n";
}
else
{
print "definiert\n";
}
undef $var;
if(!defined $var)
{
print "nicht def.\n";
}
else
{
print "definiert\n";
}
Um das Problem, das sich aus nicht, oder nicht korrekt definierten Varieblen ergibt, abzumindern, wurde die Option use strict eingeführt.
Wird sie für ein Modul/ Programm angegeben, müssen alle Variablen vor ihrer ersten Benutzung deklariert werden. Dazu dient auch das Schlüsselwort my.
Einsatz von use strict
#!C:\perl\bin\perl.exe –w
use strict;
my $var = 0; # Deklaration und Vorbelegung der Variblen var mit dem Zahlenwert 0
$var = 99; # Wertzuweisung
print $var; # Ausgabe
Vordefinierte Variablen
Die Variable $_
Sie stellt eine der wichtigsten
Weitere Kostenlose Bücher