tiempo sistema programa pedir obtener hora funciones formato fechas fecha dev como colocar calcular agregar c time time-t localtime

programa - obtener fecha del sistema en dev c++



Obtener la hora actual en C (8)

Quiero obtener la hora actual de mi sistema. Para eso estoy usando el siguiente código en C:

time_t now; struct tm *mytime = localtime(&now); if ( strftime(buffer, sizeof buffer, "%X", mytime) ) { printf("time1 = /"%s/"/n", buffer); }

El problema es que este código está dando un tiempo aleatorio. Además, el tiempo aleatorio es diferente cada vez. Quiero la hora actual de mi sistema.


Camino fácil:

#include <time.h> #include <stdio.h> int main(void) { time_t mytime = time(NULL); char * time_str = ctime(&mytime); time_str[strlen(time_str)-1] = ''/0''; printf("Current Time : %s/n", time_str); return 0; }


Copiado y pegado desde here :

/* localtime example */ #include <stdio.h> #include <time.h> int main () { time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime ); printf ( "Current local time and date: %s", asctime (timeinfo) ); return 0; }

(simplemente agrega "void" a la lista de argumentos main () para que esto funcione en C)


Inicializa tu now variable.

time_t now = time(0); // Get the system time

La función localtime se usa para convertir el valor de tiempo en el time_t pasado a una struct tm , en realidad no recupera la hora del sistema.


Para extender la respuesta de @mingos anterior, escribí la función siguiente para formatear mi tiempo en un formato específico ([dd mm aaaa hh: mm: ss]).

// Store the formatted string of time in the output void format_time(char *output){ time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime ); sprintf(output, "[%d %d %d %d:%d:%d]",timeinfo->tm_mday, timeinfo->tm_mon + 1, timeinfo->tm_year + 1900, timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec); }

Puede encontrar más información sobre struct tm here .


chicos, pueden usar esta función para obtener la hora local actual. si quieres gmtime, utiliza la función gmtime en lugar de localtime. aclamaciones

time_t my_time; struct tm * timeinfo; time (&my_time); timeinfo = localtime (&my_time); CCLog("year->%d",timeinfo->tm_year+1900); CCLog("month->%d",timeinfo->tm_mon+1); CCLog("date->%d",timeinfo->tm_mday); CCLog("hour->%d",timeinfo->tm_hour); CCLog("minutes->%d",timeinfo->tm_min); CCLog("seconds->%d",timeinfo->tm_sec);


chicos, tengo una nueva forma de obtener el tiempo del sistema. aunque es largo y está lleno de trabajos tontos, pero de esta manera puede obtener el tiempo del sistema en formato entero.

#include <stdio.h> #include <stdlib.h> int main() { FILE *fp; char hc1,hc2,mc1,mc2; int hi1,hi2,mi1,mi2,hour,minute; system("echo %time% >time.txt"); fp=fopen("time.txt","r"); if(fp==NULL) exit(1) ; hc1=fgetc(fp); hc2=fgetc(fp); fgetc(fp); mc1=fgetc(fp); mc2=fgetc(fp); fclose(fp); remove("time.txt"); hi1=hc1; hi2=hc2; mi1=mc1; mi2=mc2; hi1-=48; hi2-=48; mi1-=48; mi2-=48; hour=hi1*10+hi2; minute=mi1*10+mi2; printf("Current time is %d:%d/n",hour,minute); return 0; }


#include <stdio.h> #include <time.h> void main() { time_t t; time(&t); clrscr(); printf("Today''s date and time : %s",ctime(&t)); getch(); }


#include<stdio.h> #include<time.h> void main() { time_t t; time(&t); printf("/n current time is : %s",ctime(&t)); }