/*
 * این برنامه خطاها را کنترل نمی‌کند.
 * هدف این است که نشان دهیم برخلاف چیزی که در کتاب شکل ۱۰.۱ عنوان شده تابع
 * strftime
 * تنظیمات
 * timezone
 * را در خروحی خود دخالت نمی‌دهد.
 */

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

int
main(int argc, char *argv[])
{
    time_t t;
    struct tm *gtm, *ltm;
    struct tm g, l;
    char gbuf[BUFSIZ], lbuf[BUFSIZ];

    t = time(NULL);

    gtm = gmtime(&t);
    g = *gtm;

    ltm = localtime(&t);
    l = *ltm;

    strftime(gbuf, BUFSIZ, "%c", &g);
    strftime(lbuf, BUFSIZ, "%c", &l);

    printf("gmtime:      %s", gbuf);
    printf(" <%d:%d:%d>\n", g.tm_hour, g.tm_min, g.tm_sec);

    printf("localtime(): %s", lbuf);
    printf(" <%d:%d:%d>\n", l.tm_hour, l.tm_min, l.tm_sec);

    exit(EXIT_SUCCESS);
}
