elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Contador de segundos en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Contador de segundos en C  (Leído 21,587 veces)
soser

Desconectado Desconectado

Mensajes: 44


...


Ver Perfil
Contador de segundos en C
« en: 1 Octubre 2010, 03:52 am »

Buenas, pues ando haciendo un programa que ejecuta ciertas condiciones, pero quiero que esas condiciones se ejecuten por algunos segundos y en si el problema que tengo es que no se como hacer un segundero, he estado buscando y pues solo encuentro informacion de obtener la hora actual, asi que podrian decirme como se hace o darme alguna información que me sea util acerca de segunderos en C.


En línea

[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: Contador de segundos en C
« Respuesta #1 en: 1 Octubre 2010, 03:59 am »

Puedes tomar la fecha actual y guardarla, despues tomas otra fecha actual y verificas.


En línea

cbug

Desconectado Desconectado

Mensajes: 147



Ver Perfil
Re: Contador de segundos en C
« Respuesta #2 en: 1 Octubre 2010, 04:08 am »

Un ejemplo en linux:


Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int cnt;
  6. for(cnt = 1; cnt <= 10; cnt++){
  7. printf("\n %d Segundos \n", cnt);
  8. sleep(1);
  9. }  
  10. return 0;
  11. }

Bajo windows, creo que existe GetTickCount(...)... o algo parecido...
En línea

[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: Contador de segundos en C
« Respuesta #3 en: 1 Octubre 2010, 04:21 am »

En windows si no me equivoco tambien existe sleep();
En línea

soser

Desconectado Desconectado

Mensajes: 44


...


Ver Perfil
Re: Contador de segundos en C
« Respuesta #4 en: 1 Octubre 2010, 06:52 am »

Gracias a ambos, me han servido de mucho las dos ideas...
En línea

ace332

Desconectado Desconectado

Mensajes: 66


Ver Perfil
Re: Contador de segundos en C
« Respuesta #5 en: 1 Octubre 2010, 19:05 pm »

el problema con sleep(1) es que durante ese segundo aparte de esperar no se hace nada.

Otra forma de hacerlo usando la función clock():
Código
  1. #include <stdio.h>
  2. #include <time.h>
  3.  
  4. int main(void)
  5. {
  6.  clock_t t,ts;
  7.  int segundos=0;
  8.  ts=clock()+CLOCKS_PER_SEC;
  9.  for(;;)
  10.  {
  11.    /* hacer otras cosas */
  12.  
  13.    /* verificar si ya pasó un segundo */
  14.    if((t=clock())>=ts)
  15.    {
  16.      printf("%d\n",++segundos);
  17.      ts=t+CLOCKS_PER_SEC;
  18.    }
  19.  }
  20.  return 0;
  21. }
  22.  
Saludos
En línea

Horricreu
Wiki

Desconectado Desconectado

Mensajes: 290

¡La verdad os hará libres!


Ver Perfil WWW
Re: Contador de segundos en C
« Respuesta #6 en: 1 Octubre 2010, 22:02 pm »

sleep() no es estándar. ¿Seguro que no te da errores de compilación?

Saludos :P
« Última modificación: 13 Noviembre 2010, 00:35 am por Horricreu » En línea

[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: Contador de segundos en C
« Respuesta #7 en: 1 Octubre 2010, 22:13 pm »

Estas en lo correcto... para que funcione sleep necesita ser incluida la cabecera 'unistd.h'

Código
  1. #include <unistd.h>
  2. unsigned int sleep(unsigned int seconds);

Para mas informacion consultar en man en Linux pagina 3.
En línea

cbug

Desconectado Desconectado

Mensajes: 147



Ver Perfil
Re: Contador de segundos en C
« Respuesta #8 en: 2 Octubre 2010, 03:16 am »

Ja, sinceramente estoy algo cansado de ver el comentario "esto o aquello no es standar"... que quede a gusto y piacere de quien haga el código, si quiere hacerlo portable o no...
En línea

soser

Desconectado Desconectado

Mensajes: 44


...


Ver Perfil
Re: Contador de segundos en C
« Respuesta #9 en: 2 Octubre 2010, 05:05 am »

Me agrada que respondan y de una u otra forma sus comentarios me ayudan a entenderle más, gracias por sus comentarios ;D
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Segundos en C++
Programación C/C++
jorge19 6 3,684 Último mensaje 23 Febrero 2015, 02:45 am
por rir3760
problema con contador que toma segundos del sistema
ASM
FERNIIIIN 3 2,364 Último mensaje 28 Mayo 2019, 23:39 pm
por xv0
Convierte webs a PDF, ePub, Word o TXT en segundos
Noticias
El_Andaluz 0 1,924 Último mensaje 22 Julio 2020, 01:11 am
por El_Andaluz
15 segundos
Multimedia
Zorronde 5 30,269 Último mensaje 14 Octubre 2021, 05:36 am
por Danielㅤ
Contador 59 segundos en VHDL
Electrónica
Nicolau 1 9,229 Último mensaje 21 Enero 2023, 19:58 pm
por Meta
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines