RES: [Cascavel-pm] Funções com argumentos de arrays
Marcelo Stella
marcelo em stella.eng.br
Sexta Janeiro 6 11:37:43 PST 2006
Senhores,
Para facilitar:
@array = qw ( x y z );
$ref = \@array; # $ref é um escalar que armazena o ponteiro para o array
real...
print $array[0]."\n";
print $$ref[0]."\n";
print ${$ref}[0]."\n"; # desta forma evita confusões de interpretação pelo
perl...
[]'s
Marcelo Stella
-----Mensagem original-----
De: cascavel-pm-bounces em pm.org [mailto:cascavel-pm-bounces em pm.org] Em nome
de Alceu R. de Freitas Jr.
Enviada em: sexta-feira, 6 de janeiro de 2006 14:34
Para: Cascavel Perl Mongers
Assunto: RE: [Cascavel-pm] Funções com argumentos de arrays
Oi,
Você não criou as referências de forma correta:
# perl
@a = qw( a1 a2 a3 b1 b2 b3 );
@b = qw( x1 w1 v1 );
print "@a"."\n em b\n\n" ;
minha_funcao( \@a, \3, \@b);
sub minha_funcao(\@, \$,\@){
my( $arr_ref1, $scalar, $arr_ref2 ) = @_;
print "\narray= ";
foreach ( @{$arr_ref1} ) { print; }
print "\nlugar = ";
foreach ( ${$scalar} ) { print; }
print "\nelementos = ";
foreach ( @{$arr_ref2} ) { print; }
print "\n";
}
--- Brinde Storm - Steven Koch
<s.koch em brindestorm.com> escreveu:
> Digamos então:
> <perl>
> @a = ('a1','a2','a3','b1','b2','b3');
> @b = ('x1','w1','v1');
>
> print "@a"."\n em b\n\n" ;
>
> minha_funcao(@a, 3, @b);
>
> sub minha_funcao(\@, \$,\@ ){
> my( $arr_ref1, $scalar, $arr_ref2 ) = @_;
>
> print "\n
> array= @{$arr_ref1} \n
> lugar = ${$scalar} \n
> elementos = @{$arr_ref2}
> \n";
> }
> </perl>
>
> Mas não imprime nada
_______________________________________________________
Yahoo! doce lar. Faça do Yahoo! sua homepage.
http://br.yahoo.com/homepageset.html
_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm
Mais detalhes sobre a lista de discussão Cascavel-pm