perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 27
Click for quality!




11.02.2012 / 19:48

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


Beitragvariables array
Seitenanfang
sub mysrn{if ($new_1[29] =~ /^"0$_[0]/ || $new_1[29] =~ /^"49$_[0]/){ push(@$_[1],$_);}}

Aufruf:
&mysrn(40, @Stuttgart)

Ich erhalte dann folgende Fehlermeldung:

Type of arg 1 to push must be array (not array slice) at C:\Perl\bin\audio.pl li
ne 1, near "$_)"
BEGIN not safe after errors--compilation aborted at C:\Perl\bin\audio.pl line 3.

Ich möchte eigentlich das Array so nennen wie es im Funktionsaufruf definiert ist.

Greetz
son

Datum: 09.08.2006-14:57

Beitragre: variables array
Seitenanfang
Es muss

push(@{$_[1]},$_)

heißen

Datum: 09.08.2006-19:30

Beitragre: variables array
Seitenanfang
coolio - morgen gleich mal probieren :D

Datum: 09.08.2006-22:51

Beitragre: variables array
Seitenanfang
"Ich möchte eigentlich das Array so nennen wie es im Funktionsaufruf definiert ist."
was heißt das?
ich würde die von renees lösung abraten, es sei denn,
$_[1] ist eine array-referenz. wenn es nur ein
string ist und du darin "arrayname" stehen hast, ist
das @{$_[1]} eine symbolische referenz, und das
tut man nicht (man benutzt symrefs nur, wenn man
sie verstanden hat und anderen erklären kann, wie
und warum sie funktionieren).

Datum: 10.08.2006-19:49

-






-
-