Página 1 de 1

Mostrando el valor de un array al debugear...

NotaPublicado: 2006-07-08 17:53 @786
por scorpion
Hola a todos...

Estoy debugeando un script de perl (perl -d <script.pl>) y no recuerdo cómo puedo ver el contenido de un arreglo de forma tal que me salgan sus elementos por separado...

Por ejemplo: la variable @a contiene los valores 10, 20 y 30

p @a me muestra 102030

Quisiera verlos de forma separada sin tener que poner

p $a[0], p $a[1] o p $a[2]

que pusiera.... <el comando para mostrar a @a> y me salieran en pantalla

10
20
30

¿¿¿Hay alguna forma de hacerlo ??? para los hash había una (tampoco la recuerdo...), así que para los arreglos supongo que exista también...

Gracias por adelantado...

Saludos...

scorpion.

NotaPublicado: 2006-07-08 18:35 @816
por explorer
Recuerda que siempre puedes sacar la ayuda del debugger con el comando 'h'.

Si suponemos que has ejecutado una línea como la que dices: @a=(10,20,30); entonces con el debugger puedes hacer dos cosas.

Con el operador 'p' puedes pintar los valores, pero como bien dices, al ser un array, sacará todos los valores juntos. Pero si lo pones como si estuvieras en un print normal, entrecomillando, entonces Perl separará los valores con el separador estándar:
Código: Seleccionar todo
  DB<2> p "@a"
10 20 30

Y otra forma es usando el 'dumper' intefrado, con el comando 'x':
Código: Seleccionar todo
  DB<3> x @a
0  10
1  20
2  30