Standard library header <time.h>
From cppreference.net
This header is part of date and time utilities library.
Contents |
Functions
Time manipulation |
|
|
computes the difference between times
(function) |
|
|
returns the current calendar time of the system as time since epoch
(function) |
|
|
returns raw processor clock time since the program is started
(function) |
|
|
(C11)
|
returns the calendar time in seconds and nanoseconds based on a given time base
(function) |
|
(C23)
|
returns the resolution of calendar time based on a given time base
(function) |
Format conversions |
|
|
(deprecated in C23)
(C11)
|
converts a
tm
object to a textual representation
(function) |
|
(deprecated in C23)
(C11)
|
converts a
time_t
object to a textual representation
(function) |
|
converts a
tm
object to custom textual representation
(function) |
|
|
(C23)
(C11)
|
converts time since epoch to calendar time expressed as Coordinated Universal Time (UTC)
(function) |
|
(C23)
(C11)
|
converts time since epoch to calendar time expressed as local time
(function) |
|
converts calendar time to time since epoch
(function) |
|
Constants
|
number of processor clock ticks per second
(macro constant) |
Types
|
calendar time type
(struct) |
|
|
calendar time since epoch type
(typedef) |
|
|
processor time since era type
(typedef) |
|
|
(C11)
|
time in seconds and nanoseconds
(struct) |
Synopsis
#define __STDC_VERSION_TIME_H__ 202311L #define NULL /* see description */ #define CLOCKS_PER_SEC /* see description */ #define TIME_UTC /* see description */ typedef /* see description */ clock_t; typedef /* see description */ size_t; typedef /* see description */ time_t; struct timespec { /* see description */ }; struct tm { /* see description */ }; clock_t clock(void); double difftime(time_t time1, time_t time0); time_t mktime(struct tm* timeptr); time_t timegm(struct tm* timeptr); time_t time(time_t* timer); int timespec_get(struct timespec* ts, int base); int timespec_getres(struct timespec* ts, int base); [[deprecated]] char* asctime(const struct tm* timeptr); [[deprecated]] char* ctime(const time_t* timer); struct tm* gmtime(const time_t* timer); struct tm* gmtime_r(const time_t* timer, struct tm* buf); struct tm* localtime(const time_t* timer); struct tm* localtime_r(const time_t* timer, struct tm* buf); size_t strftime(char* restrict s, size_t maxsize, const char* restrict format, const struct tm* restrict timeptr);
Only if supported by the implementation:
#define TIME_MONOTONIC /* see description */ #define TIME_ACTIVE /* see description */
Only if threads are supported and it is supported by the implementation:
#define TIME_THREAD_ACTIVE /* see description */
Only if the implementation defines __STDC_LIB_EXT1__ and additionally the user code defines __STDC_WANT_LIB_EXT1__ before any inclusion of <time.h> :
#ifdef __STDC_WANT_LIB_EXT1__ typedef /* see description */ errno_t; typedef /* see description */ rsize_t; errno_t asctime_s(char* s, rsize_t maxsize, const struct tm* timeptr); errno_t ctime_s(char* s, rsize_t maxsize, const time_t* timer); struct tm* gmtime_s(const time_t* restrict timer, struct tm* restrict result); struct tm* localtime_s(const time_t* restrict timer, struct tm* restrict result); #endif