Função de biblioteca C - gmtime ()

Descrição

A função da biblioteca C struct tm *gmtime(const time_t *timer) usa o valor apontado pelo cronômetro para preencher um tm estrutura com os valores que representam a hora correspondente, expressa em Tempo Universal Coordenado (UTC) ou fuso horário GMT.

Declaração

A seguir está a declaração da função gmtime ().

struct tm *gmtime(const time_t *timer)

Parâmetros

  • timeptr - Este é o ponteiro para um valor time_t que representa uma hora do calendário.

Valor de retorno

Esta função retorna um ponteiro para uma estrutura tm com as informações de tempo preenchidas. Abaixo está o detalhe da estrutura timeptr -

struct tm {
   int tm_sec;         /* seconds,  range 0 to 59          */
   int tm_min;         /* minutes, range 0 to 59           */
   int tm_hour;        /* hours, range 0 to 23             */
   int tm_mday;        /* day of the month, range 1 to 31  */
   int tm_mon;         /* month, range 0 to 11             */
   int tm_year;        /* The number of years since 1900   */
   int tm_wday;        /* day of the week, range 0 to 6    */
   int tm_yday;        /* day in the year, range 0 to 365  */
   int tm_isdst;       /* daylight saving time             */	
};

Exemplo

O exemplo a seguir mostra o uso da função gmtime ().

#include <stdio.h>
#include <time.h>

#define BST (+1)
#define CCT (+8)

int main () {

   time_t rawtime;
   struct tm *info;

   time(&rawtime);
   /* Get GMT time */
   info = gmtime(&rawtime );
   
   printf("Current world clock:\n");
   printf("London : %2d:%02d\n", (info->tm_hour+BST)%24, info->tm_min);
   printf("China  : %2d:%02d\n", (info->tm_hour+CCT)%24, info->tm_min);

   return(0);
}

Vamos compilar e executar o programa acima que produzirá o seguinte resultado -

Current world clock:
London : 14:10
China : 21:10