Standard library header <ctime>

From cppreference.com
< cpp‎ | header
 
 
Standard library headers
Algorithms
<algorithm>
<numeric>
Strings
<cctype>
<cstring>
<cuchar> (C++11)
<cwchar>
<cwctype>
<string_view> (C++17)
<string>
Text processing
<clocale>
<codecvt> (C++11/17/26*)
<locale>
<regex> (C++11)
<text_encoding> (C++26)   
Numerics
<cfenv> (C++11)
<cmath>
<complex>
<linalg> (C++26)
<numbers> (C++20)
<random> (C++11)
<valarray>
Time
<chrono> (C++11)
<ctime>
C compatibility
<ccomplex> (C++11/17/20*)
<ciso646> (until C++20)
<cstdalign> (C++11/17/20*)
<cstdbool> (C++11/17/20*)
<ctgmath> (C++11/17/20*)
 

This header was originally in the C standard library as <time.h>.

This header is part of the C-style date and time library.

Macro constants

number of processor clock ticks per second
(macro constant)
implementation-defined null pointer constant
(macro constant)

Types

process running time
(typedef)
unsigned integer type returned by the sizeof operator
(typedef)
time since epoch type
(typedef)
calendar time type
(class)
(C++17)
time in seconds and nanoseconds
(struct)

Functions

Time manipulation
returns raw processor clock time since the program is started
(function)
returns the current time of the system as time since epoch
(function)
computes the difference between times
(function)
returns the calendar time in seconds and nanoseconds based on a given time base
(function)
Format conversions
converts a std::time_t object to a textual representation
(function)
converts a std::tm object to a textual representation
(function)
converts a std::tm object to custom textual representation
(function)
converts time since epoch to calendar time expressed as Universal Coordinated Time
(function)
converts time since epoch to calendar time expressed as local time
(function)
converts calendar time to time since epoch
(function)

Synopsis

#define NULL /* see description */
#define CLOCKS_PER_SEC /* see description */
#define TIME_UTC /* see description */
 
namespace std {
  using size_t = /* see description */;
  using clock_t = /* see description */;
  using time_t = /* see description */;
 
  struct timespec;
  struct tm;
 
  clock_t clock();
  double difftime(time_t time1, time_t time0);
  time_t mktime(tm* timeptr);
  time_t time(time_t* timer);
  int timespec_get(timespec* ts, int base);
  char* asctime(const tm* timeptr);
  char* ctime(const time_t* timer);
  tm* gmtime(const time_t* timer);
  tm* localtime(const time_t* timer);
  size_t strftime(char* s, size_t maxsize, const char* format, const tm* timeptr);
}

Class std::timespec

struct timespec {
  std::time_t tv_sec;
  long tv_nsec;
};

Class std::tm

struct tm {
  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;
};