Schrift
[thread]193[/thread]

Use of uninitialized value: Wie initialisiere ich ein Hash richtig? (Seite 2)

Leser: 2


<< |< 1 2 >| >> 15 Einträge, 2 Seiten
pq
 2004-03-04 18:52
#1534 #1534
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=Crian,04.03.2004, 16:42]Es ist zwar für den Interpreter wurscht, aber wenn es in einer Reihe von Variablen auftaucht, die alle gerade initialisiert werden, ist es optisch schöner.[/quote]
ja, jeder hat so seine persönlichen vorlieben. ich lasse die klammern lieber weg,
dafür mach ich bei
my %hash = (
 key1 => 23,
 key2 => 24,
);

lieber das extra-komma am ende =)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2004-03-04 19:02
#1535 #1535
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
das mach ich auch =)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Strat
 2004-03-04 20:44
#1536 #1536
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=x-man,04.03.2004, 16:18]
Code: (dl )
1
2
my %hash;
$hash{$key} = $value; #Fehlermeldung weist auf diese Zeile
[/quote]
also da ist entweder $key nicht definiert oder $value. Teste doch einfach mal

Code: (dl )
1
2
3
4
print "Key ist definiert\n" if defined $key;
print "Value ist defininiert\n" if defined $value;
my %hash;
$hash{$key} = $value;
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
x-man
 2004-03-05 16:19
#1537 #1537
User since
2003-09-11
67 Artikel
BenutzerIn
[default_avatar]
Danke Euch allen! Ich habe es hingekriegt, mit dem folgenden Code:

my %hash;
$hash{$key} = $value if defined($key and $value);

Das Problem lag tatsächlich an den undefinierten $key und $value.

Tja, man lernt nie aus ;-)
Crian
 2004-03-05 16:23
#1538 #1538
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Ich würd mal nach der Ursache forschen.

Außerdem ist if defined($key) and defined($value); das was Du willst, oder was ist wohl bei $key == 1 und $value eq undef?
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
<< |< 1 2 >| >> 15 Einträge, 2 Seiten



View all threads created 2004-03-04 17:18.