www.farid-hajji.net banner

Farid Hajji

Perl: Einführung, Anwendungen, Referenz (2/e) [Support-Site]

Farid Hajji: Perl - Einführung, Anwendungen, Referenz
2., aktualisierte und erweiterte Auflage
Addison-Wesley Longman, ISBN 3-8273-1535-2

Beispielprogramm

show-symtab.pl
#!/usr/local/bin/perl -w
# show-symtab.pl -- Zeigt die Haupt-Symboltabelle an:

# Definieren wir zum Spass einmal einige Variablen:
use vars qw ( $varscal @varlist %varhash &varsub );
$varscal = 4711;
@varlist = qw (hello brave new world);
%varhash = ( I => 'one', II => 'two', III => 'three' );
sub varsub { print "hello, this is varsub()\n" }

# Die Symboltabelle %:: enthaelt alle aktuellen Bezeichner
# des laufenden Programms.
# VORSICHT: Nur die Bezeichner ohne ihre Praefixe sind
#     in der Symboltabelle enthalten.

foreach $key ( sort keys %:: ) {
    # $key ist ein gueltiger Bezeichner.
    # Wir wissen aber nicht, von welchem Typ:
    foreach $prefix (identify_type($key)) {
    print "$prefix$key\n";
    }
}

# Liefert eine Liste mit moeglichen Praefixen:
# Vorsicht: Beruecksichtigt nicht Referenzen und Filehandles
sub identify_type {
    my $identifier = shift;      # Bezeichner ohne Praefix
    my @list = ();               # Moegliche Typen

    push (@list, '$') if defined ${$identifier};
    push (@list, '@') if defined @{$identifier};
    push (@list, '%') if defined %{$identifier};
    push (@list, '&') if defined &{$identifier};

    return @list;
}
   

[Prev] [Up] [Relevant Chapter] [Next]

[Alte Quelle]


Last modified: $Date: 2006/05/18 12:56:05 $
FH. Search :: Sitemap :: Disclaimer :: Copyright :: Privacy
FreeBSD Logo