Quisiera poder obtener la hora del sistema y almacenarla en un archivo .txt
Si solo necesitas una cadena con la hora y fecha actual puedes utilizar la función time para obtener esta como un valor de tipo time_t y a continuación la función ctime para generar la cadena. Mas o menos así:
time_t t;
/* ... */
Por supuesto se debe, para empezar, sustituir stdout en la llamada a fprintf por el stream correspondiente.
----
O si lo que quieres es procesar de alguna forma los campos (minuto, hora, etc.) puedes hacerlo manualmente (siguiendo el ejemplo de
leosan) o utilizando la función strftime (similar a sprintf). Un ejemplo:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define LONG_CADENA 128
int main(void)
{
time_t t;
struct tm *u;
char cadena[LONG_CADENA];
/* 1) Obtener la fecha actual ('time_t') */
if ((t
= time(NULL
)) == (time_t
) -1) return EXIT_FAILURE;
/* 2) Obtener la fecha actual ('struct tm *') */
/* Imprimir la fecha manualmente mediante printf */
printf("%d/", u
->tm_year
+ 1900); printf("%02d/", u
->tm_mon
+ 1);
/* Imprimir la fecha mediante strftime */
strftime(cadena
, LONG_CADENA
, "%Y/%m/%d", u
);
return EXIT_SUCCESS;
}
Un saludo