[Perl] Numero máximo de argumentos
Rafael F. Rodríguez
rafaelf en sitelcom.es
Mar Ene 18 05:11:10 CST 2005
Holas :-) .
Primero agradecerte la ayuda que me estas dando.
Bien, lo de Sub en Mayusculas fué un error de mio que al copiar el código en
el mail se quedó así, ya que lo tengo en minusculas en el código.
En cuanto a lo que me dices, a mí me sigue diciendo lo mismo, ¿estoy pensando
que algo tengo mal en el sistema ya que como bien dices tiene que
salir? :-? .
El Lunes, 17 de Enero de 2005 18:28, Max de Mendizábal escribió:
> Bueno, varios problemas. El primero es que Sub es con minúsculas "sub",
> porque si no, te marca un error de sintaxis.
>
> Saludos
> Max
>
> PD. Probé tu programa con unas cadenas y jaló bien
>
> sub FUNCION {
> my $cResultado = "";
> my $rReg = $_[0];
>
> my $valor1 = $rReg->[0];
> my $valor2 = $rReg->[1];
> my $valor3 = $rReg->[2];
> $cResultado = $valor1 . $valor2 . $valor3;
> return ($cResultado);
> }
> # @aParametros =
> ($sql->{campo1},$sql->{campo2}.$sql->{campo3},$sql->{campo33});
> my $cCadena = "Holas ";
> @aParametros = ("a", "b", "c");
> $rReferencia = \@aParametros;
> $cCadena = $cCadena.FUNCION ($rReferencia); #devuelve una cadena que es
> concatenada a la anterior.
> print "cCadena $cCadena\n";
>
> Rafael F. Rodríguez escribió:
> >Holas :-) .
> >
> > Muchas gracias por la respuesta pero me sucede igual :-? . Lo tengo de
> > esta forma.
> >
> > Sub FUNCION {
> > my $cResultado = "";
> > my $rReg = $_[0];
> >
> > my $valor1 = $rReg->[0];
> > my $valor2 = $rReg->[1];
> > .
> > .
> > .
> > return ($cResultado);
> > }
> > .
> > .
> > .
> > @aParametros = ($sql->{campo1},$sql->{campo2}.$sql->{campo3}...,
> >$sql->{campo33});
> > $rReferencia = \@aParametros;
> > $cCadena = $cCadena.FUNCION ($rReferencia); #devuelve una cadena que es
> >concatenada a la anterior.
> >
> > y me devuelve Too many arguments for main:FUNCION at gta.pl line 492,
> > near "$rReferencia)" :-?
> >
> >El Lunes, 17 de Enero de 2005 15:39, Max de Mendizábal escribió:
> >>Mi recomendación es que no pases tantos parámetros. Es mejor que metas
> >> los datos en un arreglo y pases la referencia a la función. En cualquier
> >> libro de programación te dirán lo mismo: una función con tantos
> >> parámetros es candidato seguro a que se puedan cometer errores.
> >>
> >>Saludos
> >>Max
> >>
> >>On Mon, 17 Jan 2005, Rafael F. Rodríguez wrote:
> >>>Hola Lista.
> >>>
> >>>Estoy pasando parámetros a una función pero me sale "too many arguments
> >>>for main::TRANSP at ....."
> >>>
> >>>La función tiene 31 parámetros que lo recogo con $_[x], ¿Es que acaso
> >>>existe un número máximo de parámetros? ¿como puedo solucionar este
> >>>problema?
> >
> >------------------------------------------------------------------------
> >
> >_______________________________________________
> >Perl mailing list
> >Perl en tlali.iztacala.unam.mx
> >http://tlali.iztacala.unam.mx/cgi-bin/mailman/listinfo/perl
--
Rafael F. Rodríguez
Sitel Comunicaciones (Departamento de Desarrollo y Linux).
Web: http://www.sitelcom.es
Tlf: +34 954.991 259
________________________________
Web Personal: http://myr.homelinux.org.
GPG Llave pública: http://www.rediris.es/cert/servicios/keyserver/
Key fingerprint = 97FA 7CDF 12FD 7A94 1403 225C 807E 423A 41E8 3B8B
---
Usuario Registrado Linux: 377864 (http://counter.li.org)
Máquina Registrada Linux: 276412
Más información sobre la lista de distribución Perl