ctime 使用

    技术2022-05-20  44

    Functions

    Time manipulation clockClock program (function) difftimeReturn difference between two times (function) mktimeConvert tm structure to time_t (function) timeGet current time (function) Conversion: asctimeConvert tm structure to string (function) ctimeConvert time_t value to string (function) gmtimeConvert time_t to tm as UTC time (function) localtimeConvert time_t to tm as local time (function) strftimeFormat time to string (function)

    gmtime

    function <ctime> struct tm * gmtime ( const time_t * timer );

    Convert time_t to tm as UTC time

    Uses the value pointed by timer to fill a tm structure with the values that represent the corresponding time, expressed as UTC (or GMT timezone).

    Parameters

    timer Pointer to a time_t value representing a calendar time (see time_t).

     

    Return Value

    A pointer to a tm structure with the time information filled in.This structure is statically allocated and shared by the functions gmtime and localtime. Each time either one of these functions is called the contents of this structure is overwritten.

    Example

    123456789101112131415161718192021222324 /* gmtime example */ #include <stdio.h> #include <time.h> #define MST (-7) #define UTC (0) #define CCT (+8) int main () { time_t rawtime; tm * ptm; time ( &rawtime ); ptm = gmtime ( &rawtime ); puts ("Current time around the World:"); printf ("Phoenix, AZ (U.S.) : -:d/n", (ptm->tm_hour+MST)$, ptm->tm_min); printf ("Reykjavik (Iceland) : -:d/n", (ptm->tm_hour+UTC)$, ptm->tm_min); printf ("Beijing (China) : -:d/n", (ptm->tm_hour+CCT)$, ptm->tm_min); return 0; }

     

    mktime

    function <ctime> time_t mktime ( struct tm * timeptr );

    Convert tm structure to time_t

    Interprets the contents of the tm structure pointed by timeptr as a calendar time expressed in local time. This calendar time is used to adjust the values of the members of timeptr accordingly and returned as an object of type time_t.The original values of the members tm_wday and tm_yday of timeptr are ignored, and the ranges of values for the rest of its members are not restricted to their normal values (like tm_mday being between 1 and 31).The object pointed by timeptr is modified, setting the tm_wday and tm_yday to their appropiate values, and modifying the other members as necessary to values within the normal range representing the specified time.

    Parameters

    timeptr Pointer to a tm structure that contains a calendar time broken down into its components (see tm).

     

    Return Value

    A time_t value corresponding to the calendar time passed as argument.On error, a -1 value is returned.

    Example

    1234567891011121314151617181920212223242526272829303132 /* mktime example: weekday calculator */ #include <stdio.h> #include <time.h> int main () { time_t rawtime; struct tm * timeinfo; int year, month ,day; char * weekday[] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; /* prompt user for date */ printf ("Enter year: "); scanf ("%d",&year); printf ("Enter month: "); scanf ("%d",&month); printf ("Enter day: "); scanf ("%d",&day); /* get current timeinfo and modify it to the user's choice */ time ( &rawtime ); timeinfo = localtime ( &rawtime ); timeinfo->tm_year = year - 1900; timeinfo->tm_mon = month - 1; timeinfo->tm_mday = day; /* call mktime: timeinfo->tm_wday will be set */ mktime ( timeinfo ); printf ("That day is a %s./n", weekday[timeinfo->tm_wday]); return 0; }

    time_t

    type <ctime>

    Time type

    Type capable of representing times and support arithmetical operations.This type is returned by the time function and is used as parameter by some other functions of the <ctime> header.It is almost universally expected to be an integral value representing the number of seconds elapsed since 00:00 hours, Jan 1, 1970 UTC. This is due to historical reasons, since it corresponds to a unix timestamp, but is widely implemented in C libraries across all platforms.

     

    struct tm

    type <ctime>

    Time structure

    Structure containing a calendar date and time broken down into its components.The structure contains nine members of type int, which are (in any order):

    123456789 int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst;

    The meaning of each is:

    MemberMeaningRangetm_secseconds after the minute0-61*tm_minminutes after the hour0-59tm_hourhours since midnight0-23tm_mdayday of the month1-31tm_monmonths since January0-11tm_yearyears since 1900tm_wdaydays since Sunday0-6tm_ydaydays since January 10-365tm_isdstDaylight Saving Time flag

    localtime

    function <ctime> struct tm * localtime ( const time_t * timer );

    Convert time_t to tm as local time

    Uses the time pointed by timer to fill a tm structure with the values that represent the corresponding local time.

    Parameters

    timer Pointer to a time_t value representing a calendar time (see time_t).

     

    Return Value

    A pointer to a tm structure with the time information filled in.This structure is statically allocated and shared by the functions gmtime and localtime. Each time either one of these functions is called the content of this structure is overwritten.

    Example

    123456789101112131415 /* localtime example */ #include <stdio.h> #include <time.h> int main () { time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime ); printf ( "Current local time and date: %s", asctime (timeinfo) ); return 0; }

    最新回复(0)