Função "Temporizador" em C
Publicado por Perfil removido (última atualização em 30/05/2012)
[ Hits: 39.179 ]
Exemplo simples em compilação normal.
A função lê um instante do sistema e divide o valor pelo número de ciclos de execução da máquina para calcular tempo.
Depois faz isto por uma segunda vez dentro de um laço (loop).
Quando a diferença entre a segunda e a primeira leitura for igual a um valor fornecido em segundos à função, o loop se encerra e a função termina.
Deste modo, durante a execução da função passou-se este tempo em segundos.
Igual à sleep em Bash.
#include <stdio.h>
#include <time.h>
// prototipo
void pause (float);
/** procedimento de compilacao normal
  * uso: pause(valor)
  *
  * valor eh um numero maior que zero podendo ser uma fracao.
  * eh o tempo em segundos de pausa no programa.
**/
void pause (float delay1) {
   if (delay1<0.001) return; // pode ser ajustado e/ou evita-se valores negativos.
   float inst1=0, inst2=0;
   inst1 = (float)clock()/(float)CLOCKS_PER_SEC;
   while (inst2-inst1<delay1) inst2 = (float)clock()/(float)CLOCKS_PER_SEC;
   return;
}
int main (void) {
   printf ("Favor olhar para o relogio da maquina para conferir.\n");
   printf ("5,5 segundos antes...\n");
   pause (5.5);
   printf ("5,5 segundos depois...\n");
   return 0;
}
3 EP - Poli USP - Angry Birds (angry bixos)
Exemplo de sistema especialista usando Inteligência Artificial
Funções com número variável de argumentos
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? (11)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (3)









