Tema: variable $?
Ver Mensaje Individual
  #10 (permalink)  
Antiguo 26/06/2006, 06:11
jferrero
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 18 años
Puntos: 11
El porqué hace eso de mover el byte superior al inferior tiene que ver con la forma de funcionar de system, que es el comando interno que se ejecuta en la línea $ejecuta = `$alta`;.
El resultado queda en $?, que puede ser:
* -1 si algo ha fallado
* El valor del byte bajo indica la señal externa por la que el proceso murió, o 0. Si el bit 8 está puesto, ha ocurrido además un coredump
* El valor del byte alto es el resultado de la ejecución del proceso (el valor de devolución).

Como le interesaba sólo el valor de devolución, desplazó el byte alto para quedarse con ese valor.

perldoc -f system