C/Visual C - c++

 
Vista:

c++

Publicado por pablosandoval (1 intervención) el 25/07/2006 02:01:34
hola nesecito hacer un contador de dia me y año
please
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:c++

Publicado por Nelek (816 intervenciones) el 25/07/2006 10:27:44
Que yo sepa hay una funcion especifica que te devuelve el numero de segundos (o milisegundos) que han transcurrido desde una fecha en concreto (ahora no recuerdo cual) hasta el momento actual.

En Visual C++ yo lo hago asi:

CTime time = CTime::GetCurrentTime ();
CString szLastTime = time.Format ( "%A, %d.%B.%Y, %H:%M:%S" );

y con esto consigo algo tipo (poniendo este momento):
Tuesday, 25.July.2006, 10:13:12 //El instante justo en que he puesto la linea

En c++ a secas no se si servira, pero te lo puedes hacer tu. Y de hecho ya lo conteste en otro mensaje, lo unico que tendrias que hacer es ir haciendo divisiones para adecuarte las cosas. Es decir (suponiendo que el retorno de la funcion "GetTime ()?????" son los segundos desde por ej el 1 de enero del 2000 <no es esa fecha pero no recuerdo cual es>)

//1 anyo = 60*60*24*365 = 31536000
//1 dia = 60*60*24... y asi

double tiempo_pasado, temp1, temp2, temp3... (los que necesites)
int anyo, mes, dia, hora, minuto, segundo;

anyo = tiempo_pasado / 31536000; //ya tienes los anyos
temp1 = tiempo_pasado % 31536000; //te quedas con lo que sobra

dia = temp1 / 86400;
temp2 = temp1 % 86400;

etc.

luego con el numero de dias te sacas en que mes estas y se lo restas, hacerlo directamente es algo jodido porque cada mes tiene dias variables, asi que tendras que hacer unos cuantos ifs anidados

if (dia <= 31)
mes = 1;
else if ((dia > 31) && (dia <= (31+28))
mes = 2;
...
etc

y al final, restas el numero de dias de los meses completos que hayas dejado detras de ti, para saber en que dia concreto del mes estas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar