Hoy en mi universidad un profesor me hizo una pregunta. Escribió este código en el papel y dijo "¿Cuál será el resultado de este código?"¿Por qué no imprimir nada en cada iteración de un ciclo cuando uso sleep?
use warnings;
for (1 .. 20)
{
print ".";
}
me resultó fácil y dicho que va bucle 20 veces y en cada iteración se imprimirá un punto (.) Y por lo tanto un total de 20 puntos será la salida.
Dijo que tiene razón y luego hizo algunos cambios en el código. El código era:
use warnings;
for (1 .. 20)
{
print ".";
sleep 1;
}
Dijo cuál sería el resultado ahora? No sabía acerca de la función de dormir, supongo que en cada iteración imprimirá el punto (.) Y luego esperará durante 1 segundo (debido a la función de reposo) y luego repetirá y luego lo repetirá. imprimir (.) luego esperará durante 1 segundo y así sucesivamente ...
El maestro me dijo que lo revisara en casa. Lo probé en casa y supe que el segundo código espera 20 segundos y luego imprime todos los puntos (20 puntos) a la vez. Quiero saber cómo sucedió esto? ¿Por qué no se imprime el punto (.) En cada iteración?
Gracias por remitir el artículo. :) –
'$ | --' alterna el valor entre' 0' y '1', y' $ | ++ 'establece' $ | 'en' 1' (incluso si está precedido por '$ | = -1;') De hecho, desalentó el uso de tales características oscuras. – ikegami