En este breve, pero útil artículo veremos cómo crear una función delay() para generar retardos en C++
En algunos IDE propietarios existen funciones que permiten generar retardos de n segundos. Pero no hay uno que forme parte del estándar. Para ello veremos cómo armar una función denominada delay() a la cual enviando un parámetro n genera un retarde de n segundos. Por ejemplo:
Ejemplo de uso
//retardo variable
int retardo = 10;
delay(retardo);
//Retardo estático
delay(10);
Y ahora los detalles de implementación:
Implementación delay()
#include<iostream>
#include<time.h>
using namespace std;
void delay (int secs) {
for (int i = (time(NULL)+secs); time(NULL) != i; time(NULL)) {}
}
int main () {
int retardo;
cout<<"Segundos = ";
cin>>retardo;
delay(retardo);
cout<<"Listo!";
return 0;
}
Donde:
- time(NULL) devuelve el segundo actual del sistema.
- Sumando una constante entera, da un número de segundos en el futuro.
- En cada iteración se comprueba si esa fecha futura es igual a la fecha actual en el sistema. Cuando se cumple esa condición, entonces se sale del ciclo y el programa continúa.
binarios.com.ar · publicado el 17.09.2012
recuperado del archivo de Joomla en 2026
Texto e imágenes de Cristian Bottazzi bajo CC BY-NC-SA 4.0.
recuperado del archivo de Joomla en 2026
Texto e imágenes de Cristian Bottazzi bajo CC BY-NC-SA 4.0.

