std::ctime
| Определено в заголовочном файле <ctime>
|
||
char* ctime( const std::time_t* time ); |
||
Преобразует заданное время с начала эпохи в местное календарное время, а затем в текстовое представление, как если бы была вызвана std::asctime(std::localtime(time)). Результирующая строка имеет следующий формат:
Www Mmm dd hh:mm:ss yyyy\n
Www- день недели (одно изMon,Tue,Wed,Thu,Fri,Sat,Sun).Mmm- месяц (одно изJan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec).dd- день месяцаhh- часыmm- минутыss- секундыyyyy- годы
Функция не поддерживает локализацию.
Параметры
| time | — | указатель на объект std::time_t, определяющий время для печати |
Возвращаемое значение
Указатель на статическую строку символов с завершающим нулём, содержащую текстовое представление даты и времени. Строка может совместно использоваться std::asctime и std::ctime и может перезаписываться при каждом вызове любой из этих функций.
Примечание
Эта функция возвращает указатель на статические данные и не является потокобезопасной. Кроме того, она изменяет статический объект std::tm, который может использоваться совместно с std::gmtime и std::localtime. POSIX помечает эту функцию как устаревшую и вместо неё рекомендует использовать std::strftime.
Поведение может быть неопределённым для значений std::time_t, которые приводят к строке длиннее 25 символов (например, год 10000).
Пример
#include <ctime>
#include <cstring>
#include <cassert>
#include <iostream>
int main()
{
std::time_t result = std::time(nullptr);
std::cout << std::ctime(&result);
char buffer[32];
std::strncpy(buffer, std::ctime(&result), 26);
assert('\n' == buffer[std::strlen(buffer)-1]);
std::cout << buffer;
}
Возможный вывод:
Mon Oct 11 17:10:55 2021
Mon Oct 11 17:10:55 2021
Смотрите также
| преобразует объект std::tm в текстовое представление (функция) | |
| преобразует объект std::tm в пользовательское текстовое представление (функция) | |
(C++11) |
форматирует и выводит значение даты/времени в соответствии с указанным форматом (шаблон функции) |
Документация C по ctime
| |