Como obter o tempo e a data em c?

cyberfox

Membro
Boas pessoal!

Preciso de uma ajudinha....

Trata-se que estou a fazer um trabalho final de programacao em C.

Preciso de uma funcao que me imprima no ecra a data e o tempo currentes e me guarde num vector de strings.

Alguem me pode fornecer esta funcao? é que eu ja tentei descobrir atraves da funcao date e time mas nao consegui fazer em concreto nada.

Cumprimentos :) e agradeço que me ajudem o mais rapido possivel :'(
 
Back to the future

Experimentei essas funções e ele coloca-me como data actual: 3 de Dezembro de 2032 ?!?!?

Nem me apercebi que andava avançada no tempo :P
 
http://faq.cprogramming.com/cgi-bin/smartfaq.cgi?answer=1048383636&id=1043284392

A biblioteca time.h pertence, de facto, ao C e não ao C++. Evidentemente também pode ser usada em C++, mas geralmente faz-se #include <time.h> em C e #include <ctime> em C++. As funções são exactamente as mesmas num caso e noutro e tipicamente utiliza-se time(NULL) para obtermos os segundos que passaram desde 1 de Janeiro de 1970. Esse time(NULL) devolve um objecto do tipo time_t, que é posteriormente convertido no tipo struct tm* pelas funções localtime() e gmtime() (tipicamente localtime()).
 
para a data e hora:

Código:
        #include<time.h>

        struct tm *ptr;
        time_t lt;
        lt = time(NULL);
        ptr = localtime(&lt);
        
        printf("%d/%d/%d %d:%d",ptr->tm_mday,(ptr->tm_mon+1),(ptr->tm_year+1900),ptr->tm_hour,ptr->tm_min);

Na estrutura tm podes também aceder a outros dados como por exeplo os dias da semana, etc.
 
Back
Topo