File:  [MW Coherent from dump] / coherent / a / usr / man / MULTI / localtime
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed May 29 04:56:34 2019 UTC (7 years ago) by root
Branches: MarkWilliams, MAIN
CVS tags: relic, HEAD
coherent



localtime()               Time Function               localtime()




Convert system time to calendar structure

#include <time.h>
#include <sys/types.h>
ttmm *llooccaallttiimmee(_t_i_m_e_p) ttiimmee_tt *_t_i_m_e_p;

localtime  converts  the COHERENT  internal  time  into the  form
described in the structure tm.

timep points to the system time.   It is of type time_t, which is
defined in the header file ttyyppeess.hh.

localtime returns  a pointer to  the structure tm,  which is also
defined in ttyyppeess.hh.  The  function asctime turns tm into an ASCII
string.

Unlike its  cousin gmtime, localtime returns  the local time, in-
cluding conversion  to daylight saving time,  if applicable.  The
daylight saving time  flag indicates whether daylight saving time
is now in effect, not whether it is in effect during some part of
the  year.  Note,  too, that  the time zone  is set  by localtime
every time the value returned by


        getenv("TIMEZONE")


changes.  See the Lexicon entry for TTIIMMEEZZOONNEE for more information
on how COHERENT handles time zone settings.

***** Example *****

The following example  recreates the function aassccttiimmee.  It builds
a  string somewhat  different from  that  returned by  asctime to
demonstrate how to manipulate the ttmm structure.


#include <time.h>
#include <sys/types.h>



char *month[] = {
        "January", "February", "March", "April",
        "May", "June", "July", "August", "September",
        "October", "November", "December"
};









COHERENT Lexicon                                           Page 1




localtime()               Time Function               localtime()



char *weekday[] = {
        "Sunday", "Monday", "Tuesday", "Wednesday",
        "Thursday", "Friday", "Saturday"
};



main()
{
        char buf[20];
        time_t tnum;
        struct tm *ts;
        int hour = 0;



        time(&tnum);    /* get time from system */

        /* convert time to tm struct */
        ts=localtime(&tnum);



        if (ts->tm_hour == 0)
                sprintf(buf,"12:%02d:%02d A.M.",
                        ts->tm_min, ts->tm_sec);



        else
                if(ts->tm_hour>=12) {
                        hour=ts->tm_hour-12;
                        if (hour==0)
                                hour=12;
                        sprintf(buf,"%02d:%02d:%02d P.M.",
                                hour, ts->tm_min,ts->tm_sec);



                } else
                        sprintf(buf,"%02d:%02d:%02d A.M.", ts->tm_hour,
                                ts->tm_min,ts->tm_sec);



        printf("\n%s %d %s 19%d %s\n",
                weekday[ts->tm_wday], ts->tm_mday,
                month[ts->tm_mon], ts->tm_year, buf);









COHERENT Lexicon                                           Page 2




localtime()               Time Function               localtime()



        printf("Today is the %d day of 19%d\n",
                ts->tm_yday, ts->tm_year);



        printf("Daylight Saving Time %s in effect\n",
                ts->tm_isdst ? "is" : "is not");
}


***** See Also *****

gmtime(), time, TIMEZONE

***** Notes *****

localtime returns  a pointer to a  statically allocated data area
that is overwritten by successive calls.







































COHERENT Lexicon                                           Page 3



unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.