Farid Hajji: Perl - Einführung, Anwendungen, Referenz
2., aktualisierte und erweiterte Auflage
Addison-Wesley Longman, ISBN 3-8273-1535-2
quickdata.pl
#!/usr/local/bin/perl -w
# quickdata.pl -- Grund- und zusammengesetzte Typen
# zusammen mit den Variablen, die sie enthalten.
# Die folgenden Zeilen dienen nur dazu, Warnungen ueber
# nicht benutzte Variablen zu unterdruecken:
use vars qw ( $number $inum $strdbl $strsgl $number_p $fh $func_p );
use vars qw ( @mylist1 @mylist2 %telephon %dispatcher );
# Grundtypen sind Zahlen, Strings, Zeiger und Filehandles.
# Sie koennen in skalare Variablen gespeichert werden.
# Alle skalaren Variablen fangen mit einem Dollar-Zeichen an.
#### Zahlen
$number = 3.141592654; # Gleitkommazahl
$inum = 4711; # Ganze Zahl (integer)
#### Strings
$strdbl = "Hello World!\n"; # "Zeichenkette"
$strsgl = 'Newline is \n, OK?'; # 'Zeichenkette'
#### Referenzen
$number_p = \@ARGV; # Zeiger auf @ARGV
#### Filehandles
open (FHANDLE, "< input.file") or warn $!; # FHANDLE Filehandle
$fh = \*FHANDLE; # Filehandle in Variable
#### Referenzen auf Funktionen
$func_p = sub {
print "hello, world!\n";
print 4+7, "\n";
};
# Zusammengesetzte Typen bestehen aus mehreren Elementen eines
# oder mehrerer Grundtypen. Grundtypen duerfen auch gemischt
# innerhalb der gleichen Struktur verwendet werden.
# Zusammengesetzte Typen koennen in Arrays, die mit @ anfangen,
# oder in Hashes, die mit % anfangen, gespeichert werden:
#### Listen
@mylist1 = ( 4711, 9999, 3333 ); # Homogene Liste aus Zahlen
@mylist2 = ( 4711, "hi", \@mylist1); # Heterogene Liste aus
# Zahlen, Strings und Refs
#### Assoziative Arrays
%telephon = ( 'Tim' => '555-2341',
'John' => '555-4343',
'Daphne' => '555-4222' );
%dispatcher = ( 'add' => sub { $_[0] + $_[1]; },
'sub' => sub { $_[0] - $_[1]; },
'mul' => sub { $_[0] * $_[1]; },
'div' => sub { $_[0] / $_[1] if $_[1]; } );
# Auf Arrays kann man mit Hilfe eines Index zugreifen.
# Dabei steht das erste Element an der Stelle 0.
# Der Index wird in eckigen Klammern angegeben.
# Da die einzelnen Elemente eines Arrays wiederum Skalare sind,
# muessen sie mit einem Dollar-Zeichen angesprochen werden:
print $mylist1[2], "\n"; # Zeigt 3333 an.
print $mylist2[1], "\n"; # Zeigt hi an.
# Auf Hashes greift man mit Hilfe eines String-Index zu.
# Der Index wird im Gegensatz zu Arrays in geschweiften Klammern
# angegeben.
# Da einzelne Elemente eines Hashes wiederum skalare Werte sind,
# sind diese mit einem Dollar-Zeichen anzusprechen:
print $telephon{'Daphne'}, "\n"; # Zeigt 555-4222 an.
print &{$dispatcher{'add'}}(3,2), "\n"; # Zeigt 5 an (3+2).
[Prev] [Up] [Relevant Chapter] [Next]
[Alte Quelle]
| Last modified: $Date: 2006/05/18 12:56:02 $ FH. Search :: Sitemap :: Disclaimer :: Copyright :: Privacy |
|