C++ date and time
In this article, we will learn about the date and time formats in C++. There is no complete format in C++ for date and time so we inherit it from the c language. To use date and time in c++, <ctime> header file is added in the program.
<ctime>
This header file has four time-related types as follows –
- Clock_t – It stands for clock type which is an alias of arithmetic type. It represents clock tick counts(units of a time of a constant with system-specific length). Clock_t is the type returned by clock()/.
- Time_t – It stands for time_type. It represents the time that is returned by function time(). It outputs an integral value as the number of seconds elapsed when time passes by 00:00 hours.
- Size_t – It is an alias for an unsigned integer type and represents the size of any object in bytes. Size_t is the result of the sizeof() operator which prints sizes and counts.
- tm – The tm structure holds date and time in the C structure. It is defined as follows –
Date and time functions in c++
Name of the function | Prototype of the function | Description About the function |
---|---|---|
mktime | time_t mktime(struct tm *time); | This function converts mktime to time_t or calendar date and time. |
ctime | char *ctime(const time_t *time); | It returns the pointer to a string of the format – day month year hours: minutes: seconds year. |
difftime | double difftime ( time_t time2, time_t time1 ); | It returns the difference of two-time objects t1 and t2. |
gmtime | struct tm *gmtime(const time_t *time); | This function returns the pointer of the time in the format of a structure. The time is in UTC. |
clock | clock_t clock(void); | It returns an approximated value for the amount of time the calling program is being run. The value .1 is returned if not available. |
localtime | struct tm *localtime(const time_t *time); | This function returns the pointer to the tm structure representing local time. |
time | time_t time(time_t *time); | It represents current time. |
strftime | size_t strftime(); | With the help of this function, we can format date and time in a specific manner. |
asctime | char * asctime ( const struct tm * time ); | The function converts the type object of tm to string and returns the pointer to that string. |
Example to print current date and time
Below is the example to print the current date and time in the UTC format.
Code
Output
The local date and time is: Wed Sep 22 16:31:40 2021 The UTC date and time is: Wed Sep 22 16:31:40 2021
The below code tells how to break the tm structure and to print each attribute independently with the use of -> operator.
Code
Output
Number of seconds since January 1,2021 is:: 1632328553 Year:2021 Month: 9 Day: 22 Time: 21:65:53
Next TopicCopy elision in C++