Standard library header <time.h>
From cppreference.com
C
Concurrency support (C11)
Standard Library headers
<stdmchar.h> (C29)
<stdnoreturn.h> (C11*)
<tgmath.h> (C99)
<threads.h> (C11)
<time.h>
<uchar.h> (C11)
<wchar.h> (C95)
<wctype.h> (C95)
This header is part of date and time utilities library.
[edit] Functions
Time manipulation
(C11)
(function) [edit]
Format conversions
(C23)(C11)
(function) [edit]
[edit] Constants
[edit] Types
[edit] 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