Tecnología

Inicio

Cómo obtener el último argumento como un array en Perl

El lenguaje de programación Perl soporta un número de estructuras de datos incluyendo variable escalar simple y arrays. Una matriz se denota en Perl con el símbolo "@" es un conjunto de variables escalares. En un script en Perl que a menudo necesita pasar algunos datos a una subrutina. Mientras Perl le permite pasar directamente a dos o más argumentos se obtiene inevitablemente la basura en lugar de datos de la matriz si uno de esos argumentos es una matriz. Para solucionar este problema usted tiene que utilizar el mecanismo de Perl pasar argumentos por referencia.

Instrucciones

1 Utilice una barra invertida () para pasar la matriz por referencia. Por ejemplo,

calcular (\ $ valor, \ @ de datos);

este comando pasa a la matriz "@data" a la subrutina "calcular" por referencia.

2 Utilizar una variable Perl (no una matriz) para obtener la matriz en el subprograma:

mi (valor $, $ datos) = @ _;

la variable "$ data" es una referencia a la matriz "@data."

3 Trabajar con la matriz en la subrutina usando Perl eliminación de referencias; por ejemplo, para imprimir cada elemento de la matriz de usar el bucle "foreach:"

elemento foreach $ (@ $ data) {

$ imprimir elemento;

}

El símbolo "@" delante de los datos de $ variable indica que se trata de la matriz.