Código fuente de Windows.h
# include ltstdio.h gt
# include ltconio.h gt
# include ltwindows.h gt
int m=0, s=0, ms = 0;? //m son minutos, s son segundos, ms son milisegundos.
//Las siguientes son cinco funciones caseras.
void csh();? //Inicializar interfaz
void yinc(int x, int y);? //Función para ocultar el cursor (establezca el valor de y en 0 para ocultarlo)
voidJiShi();? // Temporizador en ejecución (cambia cada 100 milisegundos)
color vacío (x corta, y corta);? //Función para establecer el color (y se establece en 0, lo que indica fondo negro)
void gtxy (int x, int y);? //Función que controla la posición del cursor
int main(?)?//Función principal
{?csh();
getch();
getch();
p>
mientras(1)
{ Jishi();
? dormir(100);? //Intervalo de tiempo 100 milisegundos
? si(kb hit())romper;? //Presiona una tecla para salir del bucle.
}
Devuelve 0;
}
¿void csh()? //Interfaz de inicialización
{Color(14, 0); //Establece caracteres de color amarillo claro y fondo negro.
printf("\n\n\t? Temporizador");
Color(10,0);? //Establece texto verde claro y fondo negro.
printf("\n\t┌────────────┐");
printf("\n\t││");
printf("\n\t└────────────┘");
gtxy(10,4);? //El cursor aparece en la columna 10, línea 4 de la pantalla.
Color(7,0);? //Restaurar caracteres blancos y fondo negro
printf("00:00:00");
yinc(1,0);? // Ocultar el cursor (yinc significa oculto)
Regresar;
}
¿Tiempo propicio nulo ()? //El temporizador está funcionando
{ ms = 1;
if(ms == 10){ s = 1; (s = = 60){ m = 1; s = 0;}
gtxy(10,4);
Color(9,0);? //Establece texto en azul claro y fondo negro.
if (m gt9) printf(" d: ", m);
else printf (" 0d: ",
Color (14); ,0);? //Establece caracteres de color amarillo claro y fondo negro.
if(s gt; 9) printf("d:", s);
else printf("0d:", s); (12,0); //Establece caracteres de color rojo claro y fondo negro.
printf("0d ", milisegundos);
}
void gtxy (int x, int y)? //Función para controlar la posición del cursor
{Posición de coordenadas;
Posición. X=x?
Ubicación.
¿Y = y?
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}
¿Color vacío (color de primer plano corto = 7, color de fondo corto = 0)? //Función para establecer color
{Handle? HANDLE = GetStdHandle(STD _ OUTPUT _ HANDLE);
SetConsoleTextAttribute (identificador, color de fondo ForeColor * 0x 10
}
void yinc(int x); , int y)? //Ocultar configuración del cursor (gb representa el cursor)
{Console_cursor_information? gb={x,y};? //x es 1-100, Y es 0 para ocultar el cursor.
SetConsoleCursorInfo(GetStdHandle(STD _ OUTPUT _ HANDLE), ampGB
}
;