![ein Kapitel weiter](../weiter.gif)
Eine Variable ist ein Wert den man im Laufe des Programms ändern kann.
Der Perl-Interpreter reserviert für jede Variable Platz im Arbeitsspeicher.
Wenn sie mit einer Variable arbeiten wollen müssen sie diese Einrichten.
Dies geschieht in dem sie Ihrer Variablen einen eindeutigen Namen geben.
Zum Beispiel...
#!/usr/bin/perl -w
$zahl = 100;
$string = "hallo";
print $string;
print "\n";
print $zahl;
print "\n";
In diesem Beispiel bekommt die Variable $zahl den Wert 100 und die Variable
$string das Wort "hallo". Für Leute die z.B. Programmieren in C gelernt haben dürfte dies ein wenig verwirrend sein da man dort doch eine Datentyp (char, int, long, double....) und einen Variablennamen benötigte.
In Perl werden die Variablen durch voranstellen des Präfixes unterschieden. In unserem Fall ist es der Präfix $.
Alle Datentypen die mit dem Präfix $ beginnen nennt man skalare
Datentypen. Diese Datentypen können Zahlen und Zeichen aufnehmen.
Und mit Hilfe des Gleichheitszeichen übergeben wir den Variablen den anfänglichen Wert.
Bei dem Skalaren Datentyp wären das Zahlen und Strings.
Bitte beachten bei dem Namen den sie Ihrer Variablen geben darauf das Ihre Variable
nicht mit einer Zahl beginnt. Weiterhin sollten sie auf die Gross.-und Kleinschreibung achten........
$zahl = 100;
print $Zahl;
Bei diesem Beispiel wird der Interpreter meckern da sie die bei der Ausgabe mit print die Variable nicht so geschrieben haben wie sie sie deklariert haben.
Der Vorteil in Perl das die Variablen nicht, im Gegensatz zu
anderen Programmiersprachen, am Anfang deklariert werden muss,
kann aber auch zum Nachteil werden.......
#!/usr/bin/perl -w
$variable1="Hallo";
$variable2=4711;
print $variable1. " : ". $variable2 . "\n";
#Viele viele Zeilen weiter....
$variabl2=1111; #Eigentlich war $variable2 gemeint
print $variabl2 . "\n";
Bei diesem Beispiel haben wir einen Tippfehler gemacht. $variabl2 anstatt
$variable2. Um diesen Fehler zu vermeiden könnten wir die Deklaration
am Anfang mittels use strict erzwingen. Die Variable wird dabei mit
dem Schlüsselwort my() deklariert..........
#!/usr/bin/perl -w
use strict;
my $variable1="Hallo";
my $variable2=4711;
print $variable1. " : ". $variable2 . "\n";
#Viele viele Zeilen weiter............
$variabl2=1111; #Eigentlich war $variable2 gemeint
print $variabl2 . "\n";
Nun wird der Perl-Interpreter das Programm nicht ausführen und eine
entsprechende Fehlermeldung ausgeben.
Bei Funktionen die mehrere Werte zurückgeben, können Selektiert werden.
Dies ganze können sie logischerweise auch mit normalen Variablen
machen.....
#!/usr/bin/perl -w
($a, $b, $c) = (5, 10, 15);
#dasselbe wie $a=5; $b=10; $c=15;
print "$a $b $c\n";
Diese Selektion kann natürlich auch noch anders verwendet werden....
#!/usr/bin/perl -w
($a, $b, $c) = (5, 10, 15);
#dasselbe wie $a=5; $b=10; $c=15;
($x, $y, $z) = ($a, $c , $b);
#dasselbe wie $x=$a; $y=$c; $z=$b
print "$x $y $z $a $c $b\n";
Selektionen werden gerne mit Funktionen verwendet......
#!/usr/bin/perl -w
($a, $b, $c, $d, $e, $f, $g) = localtime(time);
$e=$e+1;
$f=$f+1900;
print "sec:$a min:$b std:$c tag:$d mon:$e jahr:$f wochentag:$g\n";
Sind wir an einigen Werten nicht interessiert können wir diese mit
dem undef-Platzhalter selektieren........
#!/usr/bin/perl -w
($a, $b, $c, undef, undef, undef, $g) = localtime(time);
print "sec:$a min:$b std:$c wochentag:$g\n";
...oder eine Selektion mit Slices machen......
#!/usr/bin/perl -w
($a, $b, $c, $g) = (localtime(time))[0,1,2,6];
print "sec:$a min:$b std:$c wochentag:$g\n";
Zu Slices kommen wir aber noch.
![ein Kapitel weiter](../weiter.gif)
© 2001,2002 Jürgen Wolf
|