ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
Преобразуют значение времени в строку и настраивают его в соответствии с параметрами локального времени. Существуют более безопасные версии этих функций; см. раздел ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s.
char *ctime(
const time_t *timer
);
char *_ctime32(
const __time32_t *timer )
;
char *_ctime64(
const __time64_t *timer )
;
wchar_t *_wctime(
const time_t *timer
);
wchar_t *_wctime32(
const __time32_t *timer
);
wchar_t *_wctime64(
const __time64_t *timer
);
Параметры
- timer
Указатель на сохраненное время.
Возвращаемое значение
Указатель на результирующую строку знаков. NULL будет возвращено, если:
time представляет дату перед полуночью 1-го января 1970, время в формате UTC.
Если используется функция _ctime32 или _wctime32 и time представляет дату после 03:14:07 19-ого января 2038 года.
Если используется функция _ctime64 или _wctime64 и time представляет дату после 23:59:59 31-ого декабря 3000 года.
ctime — встроенная функция, которая принимает значение _ctime64 и time_t эквивалентна __time64_t. Если необходимо обеспечить интерпретацию компилятором time_t как старого 32-битного time_t, можно определить _USE_32BIT_TIME_T. Это заставит ctime вычисляться как _ctime32. Это не рекомендуется, поскольку приложение может завершиться с ошибкой после 18-ого января 2038 и не поддерживается на 64 разрядных платформах.
Заметки
Функция ctime преобразует значение времени, хранящееся в виде time_t, в символьную строку. Значение timer обычно возникает из вызова time, который возвращает количество секунд, истекших после полуночи (00:00: 00) 1-ого января 1970, в формате UTC. Строка возвращаемого значения содержит ровно 26 символов и имеет форму.
Wed Jan 02 02:03:55 1980\n\0
Время в 24-часовом формате. Все поля имеют постоянную ширину. Символ новой строки ('\n') и нуль-символ ('\0') занимают две последние позиции строки.
Преобразованная символьная строка также настраивается согласно параметрам зоны локального времени. Обратитесь к функциям time, _ftime и localtime за сведениями о настройке местного времени и функции _tzset за подробными сведениями об определении среды временной зоны и глобальных переменных.
Вызов ctime изменяет один статически выделенный буфер, используемый функциями gmtime и localtime. Каждый вызов одной из этих процедур уничтожает результат предыдущего вызова. ctime делит статический буфер с функцией asctime. Таким образом, вызов ctime уничтожает результаты любого предыдущего вызова функций asctime, localtime или gmtime.
_wctime и _wctime64 — версии, работающие с расширенными символами, для ctime и _ctime64; возвращают указатель на строку из расширенных символов. В противном случае поведение _ctime64, _wctime и _wctime64 идентично ctime.
Эти функции проверяют свои параметры. Если параметр timer — нулевой указатель, или значение таймера отрицательно, эти функции вызывают обработчик недопустимого параметра, как описано в разделе Проверка параметров. Если продолжение выполнения разрешено, эти функции возвращают NULL и устанавливают для errno значение EINVAL.
Универсальное текстовое сопоставление функций
Подпрограмма TCHAR.H |
_UNICODE & _MBCS не определены |
_MBCS определено |
_UNICODE определено |
---|---|---|---|
_tctime |
ctime |
ctime |
_wctime |
_tctime32 |
_ctime32 |
_ctime32 |
_wctime32 |
_tctime64 |
_ctime64 |
_ctime64 |
_wctime64 |
Требования
Подпрограмма |
Обязательный заголовок |
---|---|
ctime |
<time.h> |
_ctime32 |
<time.h> |
_ctime64 |
<time.h> |
_wctime |
<time.h> или <wchar.h> |
_wctime32 |
<time.h> или <wchar.h> |
_wctime64 |
<time.h> или <wchar.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость во введении.
Пример
// crt_ctime64.c
// compile with: /W3
/* This program gets the current
* time in _time64_t form, then uses ctime to
* display the time in string form.
*/
#include <time.h>
#include <stdio.h>
int main( void )
{
__time64_t ltime;
_time64( <ime );
printf( "The time is %s\n", _ctime64( <ime ) ); // C4996
// Note: _ctime64 is deprecated; consider using _ctime64_s
}
Эквивалент в .NET Framework
См. также
Ссылки
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s