[Perl] operador que no se que significa

Salvador Ortiz Garcia sog en msg.com.mx
Lun Mayo 9 14:32:02 CDT 2005


On Mon, 2005-05-09 at 15:09 -0300, Jorge Alejandro Adell wrote:
> Amigos:
> Les paso parte del codigo del modulo Net::Time
> La pregunta es que no se que significa $offset = 0|0;
> Porque el programador puso de esta manera.
> Yo hubiera puesta $offset = 0 y listo.
> Me interesaria saber el motivo de porque usa el operador "|"

En perl el 'idiom' "foo | 0;" es el equivalente moral del 'cast' en C
"(unsigned int)foo"

Prueba: 

   $ perl -e 'print 3.14 | 0'
   $ perl -e 'print -1 | 0'

El caso "my $f = 0|0;" es solo un guiño al programador y te sirve de
documentación, lease "Mi $f es (será) un entero sin signo".

Saludos.

-- 
Salvador Ortiz Garcia <sog en msg.com.mx>
Matías Software Group



Más información sobre la lista de distribución Perl