<!DOCTYPE html>
<html class="client-nojs" lang="ru" dir="ltr"><head>
    <meta charset="UTF-8">
    <title>Time.h</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" type="image/png" href="./_res_/favicon.png">
    <link rel="canonical" href="https://ru.wikipedia.org/wiki/Time.h"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.pygments.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.styles.legacy.css" rel="stylesheet" type="text/css">
    <meta name="ResourceLoaderDynamicStyles" content="">
    <link href="./_mw_/ext.gadget.common-site.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.gadget.logo.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
    <link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
    <link rel="stylesheet" type="text/css" href="./_res_/footer.css">
    <link rel="stylesheet" type="text/css" href="./_res_/vector.css">
  </head>

  <body class="skin-vector-legacy mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Time_h rootpage-Time_h skin-vector action-view">
    <div id="content" class="mw-body" role="main">
      <a id="top"></a>
      <h1 id="firstHeading" class="firstHeading mw-first-heading">time.h</h1>
      <div id="bodyContent" class="vector-body">
        <div id="contentSub">
          <div id="mw-content-subtitle"></div>
        </div>
        <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="ru" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="ru" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r138740689">
/* start https://ru.wikipedia.org/ */


.mw-parser-output .ts-Боковая_навигационная_таблица-body{float:right;clear:right;width:23em;margin:0 0 1.0em 1.0em;background:var(--background-color-interactive-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);color:inherit;padding:0.4em;border-spacing:0.2em;text-align:center;line-height:1.4em;font-size:90%}.mw-parser-output .ts-Боковая_навигационная_таблица-outerTitle{padding-bottom:0.2em;font-size:125%;line-height:1.15em;font-weight:bold}.mw-parser-output .ts-Боковая_навигационная_таблица-topImage{padding:0 0 0.4em}.mw-parser-output .ts-Боковая_навигационная_таблица-topImage-caption,.mw-parser-output .ts-Боковая_навигационная_таблица-image-caption{padding-top:0.2em;line-height:1.2em}.mw-parser-output .ts-Боковая_навигационная_таблица-preTitle{padding-top:0.4em}.mw-parser-output .ts-Боковая_навигационная_таблица-topImage-row+tr>.ts-Боковая_навигационная_таблица-preTitle{padding-top:0}.mw-parser-output .ts-Боковая_навигационная_таблица-image{padding:0.4em 0 0.4em}.mw-parser-output .ts-Боковая_навигационная_таблица-title{padding:0.2em 0.4em 0.2em;font-size:125%;line-height:1.15em;font-weight:bold;background:var(--ruwiki-background-color-blue200,#cfe3ff);color:inherit}.mw-parser-output .ts-Боковая_навигационная_таблица-above{padding:0.2em 0.4em 0.2em;font-weight:bold}.mw-parser-output .ts-Боковая_навигационная_таблица-below{padding:0.2em 0.4em 0.2em;font-weight:bold;background:var(--background-color-progressive-subtle,#eaf3ff);color:inherit}.mw-parser-output .ts-Боковая_навигационная_таблица-heading{padding:0.2em 0;font-weight:bold;background:var(--background-color-progressive-subtle,#eaf3ff);color:inherit}.mw-parser-output .ts-Боковая_навигационная_таблица-list{padding:0.2em 0}


/* end   https://ru.wikipedia.org/ */
</style>
<p><b>time.h</b>&nbsp;— заголовочный файл <a href="%D0%A1%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0%D1%8F_%D0%B1%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0_%D0%A1%D0%B8" title="Стандартная библиотека языка Си">стандартной библиотеки языка программирования C</a>, содержащий типы и функции для работы с датой и временем.
</p>

<div class="mw-heading mw-heading2"><h2 id="Вступление"><span id=".D0.92.D1.81.D1.82.D1.83.D0.BF.D0.BB.D0.B5.D0.BD.D0.B8.D0.B5"></span>Вступление</h2></div>
<p>Некоторые функции могут работать с <i>местным временем</i>, которое может отличаться от календарного, например в связи с часовыми поясами. Определены арифметические типы <code>clock_t</code> и <code>time_t</code> для представления времени, а <a href="%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)" class="mw-redirect" title="Структура (программирование)">структура</a> <code>struct tm</code> содержит компоненты календарного времени.
</p>
<table class="wikitable">

<tbody><tr>
<th>Имя
</th>
<th>Описание
</th></tr>
<tr>
<td><code><a href="%D0%A6%D0%B5%D0%BB%D1%8B%D0%B9_%D1%82%D0%B8%D0%BF" class="mw-redirect" title="Целый тип">int</a> tm_sec;</code>
</td>
<td>Секунды от начала минуты - [0,60]<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</td></tr>
<tr>
<td><code>int tm_min;</code>
</td>
<td>Минуты от начала часа - [0,59]
</td></tr>
<tr>
<td><code>int tm_hour;</code>
</td>
<td>Часы от полуночи - [0,23]
</td></tr>
<tr>
<td><code>int tm_mday;</code>
</td>
<td>День месяца - [1,31]
</td></tr>
<tr>
<td><code>int tm_mon;</code>
</td>
<td>Месяцы после января - [0,11]
</td></tr>
<tr>
<td><code>int tm_year;</code>
</td>
<td>Года с 1900
</td></tr>
<tr>
<td><code>int tm_wday;</code>
</td>
<td>Дни с воскресенья - [0,6]
</td></tr>
<tr>
<td><code>int tm_yday;</code>
</td>
<td>Дни с первого января - [0,365]
</td></tr>
<tr>
<td><code>int tm_isdst;</code>
</td>
<td>Признак летнего времени
</td></tr></tbody></table>
<p>Поле <code>tm_isdst</code> имеет положительное значение, если активен режим летнего времени, нуль в противном случае и отрицательное значение, если информация о сезоне времени недоступна/неизвестна.
</p>
<div class="mw-heading mw-heading2"><h2 id="Основные_функции"><span id=".D0.9E.D1.81.D0.BD.D0.BE.D0.B2.D0.BD.D1.8B.D0.B5_.D1.84.D1.83.D0.BD.D0.BA.D1.86.D0.B8.D0.B8"></span>Основные функции</h2></div>
<p><code>clock_t clock(void)</code>
</p>
<dl><dd>Возвращает время, затраченное процессором на выполнение программы, представленное типом <code>clock_t</code>, или -1, если оно неизвестно. Размерность возвращаемого значения определяется при помощи константы <code>CLOCKS_PER_SEC</code>, которая задаёт количество единиц значения времени в одной секунде.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> Начало отсчёта времени, возвращаемого функцией <code>clock()</code>, не обязательно должно совпадать с началом выполнения программы, а промежутки времени, измеренные при помощи данной функции, могут не соответствовать аналогичным промежуткам календарного времени, в зависимости от ресурсов, выделяемых программе операционной системой.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></dd></dl>
<p><code>time_t time(time_t *tp)</code>
</p>
<dl><dd>Возвращает текущее календарное время или −1, если это время не известно. Если указатель <code>tp</code> не равен <code>NULL</code>, то возвращаемое значение записывается также и в <code>*tp</code></dd></dl>
<p><code>double difftime(time_t time2,time_t time1)</code>
</p>
<dl><dd>Возвращает разность <code>time2-time1</code>, выраженную в секундах.</dd></dl>
<p><code>time_t mktime(struct tm *tp)</code>
</p>
<dl><dd>Преобразует местное время, заданное структурой <code>*tp</code>, в календарное и возвращает его в том же виде, что и функция <code>time()</code>. Компоненты структуры будут иметь значения в указанных выше диапазонах. Функция возвращает календарное время или −1, если оно не представимо.</dd></dl>
<p><code>char *asctime(const struct tm *tp)</code>
</p>
<dl><dd>Преобразует время из структуры <code>*tp</code> в строку вида <code>"Sun Jan 3 15:14:13 1988\n\0"</code></dd></dl>
<div class="mw-heading mw-heading2"><h2 id="Константы"><span id=".D0.9A.D0.BE.D0.BD.D1.81.D1.82.D0.B0.D0.BD.D1.82.D1.8B"></span>Константы</h2></div>
<p><code>CLOCKS_PER_SEC</code>
</p>
<dl><dd>Определяет количество тактов системных часов в секунду. Используется для пересчета величины, возвращаемой функцией <code>clock()</code>, в секунды. <style data-mw-deduplicate="TemplateStyles:r141254988">
/* start https://ru.wikipedia.org/ */


.mw-parser-output .ts-fix-template{font-style:normal;font-weight:normal;white-space:nowrap}.mw-parser-output .ts-fix-error{font-size:inherit}@media screen{.mw-parser-output .ts-fix-text{border:1px solid var(--border-color-base,#a2a9b1);box-decoration-break:clone;margin:0 -0.1em;padding:0 0.1em;transition:background 0.1s}.mw-parser-output .ts-fix-text:hover{background:#fee7e6}html.skin-theme-clientpref-night .mw-parser-output .ts-fix-text:hover{background:#4f1312}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .ts-fix-text:hover{background:#4f1312}}@media screen and (hover:hover){.mw-parser-output .ts-fix-comment,.mw-parser-output .ts-fix-commented>a:not(:hover){border-bottom:1px dotted;text-decoration:none}}


/* end   https://ru.wikipedia.org/ */
</style></dd></dl>
<p><code>CLK_PER_SEC</code>
</p>
<dl><dd>Альтернативное имя константы <code>CLOCKS_PER_SEC</code>, используемое в некоторых библиотеках.</dd></dl>
<p><code>CLK_TCK</code>
</p>
<dl><dd>Вышедший из употребления макрос для константы <code>CLOCKS_PER_SEC</code>. </dd></dl>
<div class="mw-heading mw-heading2"><h2 id="Типы_данных"><span id=".D0.A2.D0.B8.D0.BF.D1.8B_.D0.B4.D0.B0.D0.BD.D0.BD.D1.8B.D1.85"></span>Типы данных</h2></div>
<p><code>clock_t</code>
</p>
<dl><dd>Возвращается функцией <code>clock()</code>. Обычно определён как int или long int.</dd></dl>
<p><code>time_t</code>
</p>
<dl><dd>Возвращается функцией <code>time()</code>. Обычно определён как int или long int.</dd></dl>
<p><code>struct tm</code>
</p>
<dl><dd>Нелинейное, дискретное календарное представление времени.</dd></dl>
<div class="mw-heading mw-heading2"><h2 id="Пример_использования"><span id=".D0.9F.D1.80.D0.B8.D0.BC.D0.B5.D1.80_.D0.B8.D1.81.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D1.8F"></span>Пример использования</h2></div>
<p>Вывод на экран текущего времени.
</p>
<div class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;stdio.h&gt;</span>
<span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;time.h&gt;</span>

<span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span>
<span class="p">{</span>
<span class="w">  </span><span class="k">const</span><span class="w"> </span><span class="kt">time_t</span><span class="w"> </span><span class="n">timer</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">time</span><span class="p">(</span><span class="nb">NULL</span><span class="p">);</span>
<span class="w">  </span><span class="n">printf</span><span class="p">(</span><span class="s">"%s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span><span class="w"> </span><span class="n">ctime</span><span class="p">(</span><span class="o">&amp;</span><span class="n">timer</span><span class="p">));</span>
<span class="w">  </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
</pre></div>
<p>Visual Studio 2010
</p>
<div class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;stdio.h&gt;</span>
<span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;time.h&gt;</span>

<span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">argc</span><span class="p">,</span><span class="w"> </span><span class="kt">char</span><span class="o">**</span><span class="w"> </span><span class="n">argv</span><span class="p">[])</span>
<span class="p">{</span>
<span class="w">  </span><span class="kt">time_t</span><span class="w"> </span><span class="n">t</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">time</span><span class="p">(</span><span class="nb">NULL</span><span class="p">);</span>
<span class="w">  </span><span class="k">struct</span><span class="w"> </span><span class="nc">tm</span><span class="o">*</span><span class="w"> </span><span class="n">aTm</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">localtime</span><span class="p">(</span><span class="o">&amp;</span><span class="n">t</span><span class="p">);</span>
<span class="w">  </span><span class="n">printf</span><span class="p">(</span><span class="s">"%04d/%02d/%02d %02d:%02d:%02d </span><span class="se">\n</span><span class="s">"</span><span class="p">,</span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_year</span><span class="o">+</span><span class="mi">1900</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_mon</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_mday</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_hour</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_min</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_sec</span><span class="p">);</span>
<span class="w">  </span><span class="n">getchar</span><span class="p">();</span>
<span class="w">  </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
</pre></div>
<p>Запись в файл
</p>
<div class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><pre><span></span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;stdio.h&gt;</span>
<span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;time.h&gt;</span>

<span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">argc</span><span class="p">,</span><span class="w"> </span><span class="kt">char</span><span class="o">**</span><span class="w"> </span><span class="n">argv</span><span class="p">[])</span>
<span class="p">{</span>
<span class="w">  </span><span class="kt">time_t</span><span class="w"> </span><span class="n">t</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">time</span><span class="p">(</span><span class="nb">NULL</span><span class="p">);</span>
<span class="w">  </span><span class="k">struct</span><span class="w"> </span><span class="nc">tm</span><span class="o">*</span><span class="w"> </span><span class="n">aTm</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">localtime</span><span class="p">(</span><span class="o">&amp;</span><span class="n">t</span><span class="p">);</span>

<span class="w">  </span><span class="kt">FILE</span><span class="o">*</span><span class="w"> </span><span class="n">hFILE</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">fopen</span><span class="p">(</span><span class="s">"test"</span><span class="p">,</span><span class="w"> </span><span class="s">"w"</span><span class="p">);</span>
<span class="w">  </span><span class="n">fprintf</span><span class="p">(</span><span class="n">hFILE</span><span class="p">,</span><span class="s">"%04d/%02d/%02d %02d:%02d:%02d"</span><span class="p">,</span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_year</span><span class="o">+</span><span class="mi">1900</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_mon</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_mday</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_hour</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_min</span><span class="p">,</span><span class="w"> </span><span class="n">aTm</span><span class="o">-&gt;</span><span class="n">tm_sec</span><span class="p">);</span>
<span class="w">  </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="Примечания"><span id=".D0.9F.D1.80.D0.B8.D0.BC.D0.B5.D1.87.D0.B0.D0.BD.D0.B8.D1.8F"></span>Примечания</h2></div>
<div class="reflist columns" style="list-style-type: decimal;">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text">Интервал допускает наличие <a href="%D0%A1%D0%B5%D0%BA%D1%83%D0%BD%D0%B4%D0%B0_%D0%BA%D0%BE%D0%BE%D1%80%D0%B4%D0%B8%D0%BD%D0%B0%D1%86%D0%B8%D0%B8" class="mw-redirect" title="Секунда координации">секунды координации</a>. <a rel="nofollow" class="external free" href="http://en.cppreference.com/w/cpp/chrono/c/tm">http://en.cppreference.com/w/cpp/chrono/c/tm</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120113025001/http://en.cppreference.com/w/cpp/chrono/c/tm">Архивная копия</a> от 13 января 2012 на <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><a href="#cite_ref-2">↑</a></span> <span class="reference-text"><span class="citation"><span lang="und"><a rel="nofollow" class="external text" href="http://www.opennet.ru/man.shtml?topic=clock&amp;category=3&amp;russian=0">Русские man: Библиотечные вызовы: clock</a></span><span class="hidden-ref" style="display:none;">&nbsp;</span>. Дата обращения: 24 января 2019. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190125020538/http://www.opennet.ru/man.shtml?topic=clock&amp;category=3&amp;russian=0">Архивировано</a> 25 января 2019 года.</span></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><span class="citation"><span lang="und"><a rel="nofollow" class="external text" href="https://en.cppreference.com/w/c/chrono/clock">cppreference.com: clock</a></span><span class="hidden-ref" style="display:none;">&nbsp;</span>. Дата обращения: 24 января 2019. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190125020254/https://en.cppreference.com/w/c/chrono/clock">Архивировано</a> 25 января 2019 года.</span></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="Ссылки"><span id=".D0.A1.D1.81.D1.8B.D0.BB.D0.BA.D0.B8"></span>Ссылки</h2></div>
<ul><li><code><a rel="nofollow" class="external text" href="http://www.opengroup.org/onlinepubs/9699919799/basedefs/time.h.html">time.h</a></code>&nbsp;—&nbsp;основные определения, <a href="Single_Unix_Specification" class="mw-redirect" title="Single Unix Specification">The Single UNIX® Specification</a>, выпуск 7 от <a href="The_Open_Group" title="The Open Group">The Open Group</a> &nbsp;<span class="ref-info" title="на английском языке" style="cursor:help;">(англ.)</span></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
    Эта статья взята у (из) <a class="external text" title="Последний раз редактировалась 2025-07-16" href="https://ru.wikipedia.org/wiki/?title=Time.h&amp;oldid=146319252">Википедия</a>. Текст лицензируется по <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.ru">Creative Commons Attribution-Share Alike 4.0</a>. К медиа файлам могут применятся дополнительные условия.
</div>
</div><!--/htdig_noindex--></div>
      </div>
    </div>
     <script src="./_webp_/webpHandler.js"></script>
  

</body></html>