Функции даты и времени языка C представляют собой группу функций в стандартной библиотеке языка программирования C, реализующих операции манипулирования датой и временем. [1] Они обеспечивают поддержку получения времени , преобразования между форматами даты и форматированного вывода в строки.
Формат строки, используемый в, strftime
восходит как минимум к PWB/UNIX 1.0 , выпущенной в 1977 году. Его date
системная команда включает различные параметры форматирования. [2] [3] В 1989 году был выпущен стандарт ANSI C, включающий strftime
и другие функции даты и времени. [4]
Операции даты и времени в языке C определены в time.h
заголовочном файле ( ctime
заголовок в C++ ).
Первоначально типы timespec
и связанные с ними были предложены Маркусом Куном для предоставления различных временных баз, но TIME_UTC
были приняты только они. [6] Однако эти функции были добавлены в C++ в 2020 году в std::chrono.
Следующий исходный код на языке C выводит текущее время в стандартный поток вывода .
#include <время.h> #include <stdlib.h> #include <stdio.h> int main ( void ) { time_t current_time ; char * c_time_string ; /* Получить текущее время. */ current_time = time ( NULL ); если ( current_time == (( time_t ) -1 )) { ( void ) fprintf ( stderr , "Не удалось получить текущее время. \n " ); выход ( EXIT_FAILURE ); } /* Преобразовать в формат местного времени. */ c_time_string = ctime ( & current_time ); если ( c_time_string == NULL ) { ( void ) fprintf ( stderr , "Не удалось преобразовать текущее время. \n " ); выход ( EXIT_FAILURE ); } /* Вывод на stdout. ctime() уже добавил завершающий символ новой строки. */ ( void ) printf ( "Текущее время: %s" , c_time_string ); exit ( EXIT_SUCCESS ); }
Вывод:
Текущее время: Чт Сен 15 21:18:23 2016