Date/Time in C++

Written by

Vaaruni Agarwal

The standard libraries in C++ do not provide a proper date type. To access date and time-related functions and structures, we would need to include <ctime> header file in the C++ program.

There are four time-related types: clock_t, time_t, size_t, and tm. The types – clock_t, size_t and time_t are capable of representing the system time and date as some sort of integer.

Following are the important functions, which we can use while working with date and time in C++. All these functions are part of standard C++ library .

1 time_t time(time_t *time);

This returns the current calendar time of the system in number of seconds elapsed since January 1, 1970. If the system has no time, .1 is returned.

2 char *ctime(const time_t *time);

This returns a pointer to a string of the form day month year hours:minutes:seconds year

3 struct tm *localtime(const time_t *time);

This returns a pointer to the tm structure representing local time.

4 clock_t clock(void);

This returns a value that approximates the amount of time the calling program has been running. A value of .1 is returned if the time is not available.

5 char * asctime ( const struct tm * time );

This returns a pointer to a string that contains the information stored in the structure pointed to by time converted into the form: day month date hours:minutes:seconds year

6 struct tm *gmtime(const time_t *time);

This returns a pointer to the time in the form of a tm structure. The time is represented in Coordinated Universal Time (UTC), which is essentially Greenwich Mean Time (GMT).

7 time_t mktime(struct tm *time);

This returns the calendar-time equivalent of the time found in the structure pointed to by time.

8 double difftime ( time_t time2, time_t time1 );

This function calculates the difference in seconds between time1 and time2.

9 size_t strftime();

This function can be used to format date and time in a specific format.


Date/Time in C++