std::ctime

From Cppreference

< cpp | chrono | c
Jump to: navigation, search
Defined in header <ctime>

char* ctime( const std::time_t* time );

Converts given time since epoch to a calendar local time and then to a textual representation, as if by calling std::asctime(std::localtime(time)). The resulting string has the following format:

Www Mmm dd hh:mm:ss yyyy

The function does not support localization.

Contents

[edit] Parameters

time - pointer to a std::time_t object specifying the time to print

[edit] Return value

pointer to a static null-terminated character string holding the textual representation of date and time. The string may be shared between std::asctime and std::ctime, and may be overwritten on each invocation of any of those functions.

[edit] Notes

This function returns a pointer to static data and is not thread-safe. In addition, it modifies the static std::tm object which may be shared with std::gmtime and std::localtime. POSIX marks this function obsolete and recommends std::strftime instead.

The behavior may be undefined for the values of time_t that result in the string longer than 25 characters (e.g. year 10000)

[edit] Example

#include <ctime>
#include <iostream>
int main()
{
    std::time_t result = std::time(NULL);
    std::cout << std::ctime(&result);
}

Output:

Tue Dec 27 17:21:29 2011

[edit] See also

converts a time_t object to a textual representation
(function)
converts a tm object to custom textual representation
(function)
(C++11)
formats and outputs a date/time value according to the specified format
(function template)