linux时间函数与时间格式与字符串之间的转化方法
<p>我们可以认为格林威治时间就是时间协调时间(GMT=UTC)</p>
<p>
<strong>GMT : 格林威治时间 </strong></p>
<p>
<strong>UTC : 时间协调时间</strong></p>
<p>
<span><strong>1、time_t </strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_640086">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t time(time_t *t);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
取得从1970年1月1日至今的秒数。</p>
<p>
time_t类型,这本质上是一个长整数( long ),表示从1970-01-01 00:00:00到目前计时时间的秒数,timeval则精确到毫秒</p>
<p>
<span><strong>2、timeval</strong></span></p>
<p>
timeval类型,这是一个结构体类型,struct timeval 头文件为 time.h</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_919747">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">struct timeval</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">{</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">time_t tv_sec; /* Seconds. */</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">//秒</code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">suseconds_t tv_usec; /* Microseconds. */</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">//微秒</code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml plain">};</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
使用:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_312401">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">struct timeval tv;</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">gettimeofday(&tv, NULL);</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">printf("%d\t%d\n", tv.tv_usec, tv.tv_sec);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>3、timezone</strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_67708">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">struct timezone</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">{ </code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tz_minuteswest; /* minutes west of Greenwich */ </code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tz_dsttime; /* type of DST correction */ </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">};</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span>4、struct tm</span></p>
<p>
tm结构,这本质上是一个结构体,里面包含了各时间字段</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_309960">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">struct tm { </code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_sec; /* seconds after the minute - */ </code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_min; /* minutes after the hour - */ </code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_hour; /* hours since midnight - */ </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_mday; /* day of the month - */ </code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_mon; /* months since January - */ </code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_year; /* years since 1900 */ </code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_wday; /* days since Sunday - */ </code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_yday; /* days since January 1 - */ </code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">int tm_isdst; /* daylight savings time flag */ </code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">};</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
其中tm_year表示从1900年到目前计时时间间隔多少年,如果是手动设置值的话,tm_isdst通常取值-1。</p>
<p>
<strong>功能:</strong></p>
<p>
tm结构体包含,年、月、日,时、分、秒</p>
<p>
<strong>使用:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_169711">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t t_time;</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">struct tm *tmp_ptr = NULL;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">time(&t_time);</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("t_time = %d.\n", t_time); </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr = gmtime(&t_time);</code>
</div>
<div class="line number6 index5 alt1">
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("after gmtime, the time is: \</code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n yday = %d \</code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n wday = %d \</code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n year = %d \</code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mon = %d \</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mday = %d \</code>
</div>
<div class="line number13 index12 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n hour = %d \</code>
</div>
<div class="line number14 index13 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n min = %d \</code>
</div>
<div class="line number15 index14 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n sec = %d \</code>
</div>
<div class="line number16 index15 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n isdst =%d.\n", </code>
</div>
<div class="line number17 index16 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_yday,</code>
</div>
<div class="line number18 index17 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_wday,</code>
</div>
<div class="line number19 index18 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_year,</code>
</div>
<div class="line number20 index19 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_mon,</code>
</div>
<div class="line number21 index20 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_mday,</code>
</div>
<div class="line number22 index21 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_hour, </code>
</div>
<div class="line number23 index22 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_min, </code>
</div>
<div class="line number24 index23 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_sec,</code>
</div>
<div class="line number25 index24 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_isdst</code>
</div>
<div class="line number26 index25 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_349808">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">t_time = 1513841065.</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">after gmtime, the time is: </code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">yday = 354 </code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">wday = 4 </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">year = 117 </code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">mon = 11 </code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml plain">mday = 21 </code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml plain">hour = 7 </code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml plain">min = 24 </code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml plain">sec = 25 </code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml plain">isdst =0.</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>5、ctime/asctime</strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_363583">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">char *ctime(const time_t *timep);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
将timep转换为真是世界的时间,以字符串显示,它和asctime不同就在于传入的参数形式不一样。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_473895">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">char *asctime(const struct tm* timeptr);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
将结构中的信息转换为真实世界的时间,以字符串的形式显示。</p>
<p>
char *ctime(const time_t *timer) 返回一个表示当地时间的字符串,当地时间是基于参数 timer。</p>
<p>
返回的字符串格式:Thu Dec 21 13:59:57 2017</p>
<p>
<strong>使用:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_369368">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t curtime;</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">struct tm *tm_ptr = NULL;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">time(&curtime);</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">tm_ptr = localtime(&curtime);</code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">printf("ctime转换的当前时间 = %s", ctime(&curtime));</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">printf("asctime转换的当前时间 = %s", asctime(tm_ptr));</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<p>
ctime转换的当前时间 = Thu Dec 21 13:59:57 2017</p>
<p>
asctime转换的当前时间 = Thu Dec 21 13:59:57 2017</p>
<p>
<span><strong>6、gmtime/localtime</strong></span></p>
<p>
struct tm* gmtime(const time_t *timep);</p>
<p>
将time_t表示的时间转换为没有经过时区转换的UTC时间,是一个struct tm结构指针。</p>
<p>
stuct tm* localtime(const time_t *timep);</p>
<p>
和gmtime类似,但是它是经过时区转换的时间。</p>
<p>
<strong>time_t curtime;</strong></p>
<p>
gmtime 函数将 curtime 转换为struct tm结构的格林威治时间,基本的意思是,gmtime转出来的是0时区的标准时间</p>
<p>
localtime 函数将 curtime 转换为struct tm结构的本地时间,localtime是将时区考虑在内了,转出的当前时区的时间。</p>
<p>
举个例子:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_159984">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
<div class="line number39 index38 alt2">
39</div>
<div class="line number40 index39 alt1">
40</div>
<div class="line number41 index40 alt2">
41</div>
<div class="line number42 index41 alt1">
42</div>
<div class="line number43 index42 alt2">
43</div>
<div class="line number44 index43 alt1">
44</div>
<div class="line number45 index44 alt2">
45</div>
<div class="line number46 index45 alt1">
46</div>
<div class="line number47 index46 alt2">
47</div>
<div class="line number48 index47 alt1">
48</div>
<div class="line number49 index48 alt2">
49</div>
<div class="line number50 index49 alt1">
50</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t t_time;</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">struct tm *tmp_ptr = NULL;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">time(&t_time);</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("t_time = %d.\n", t_time); </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr = gmtime(&t_time);</code>
</div>
<div class="line number6 index5 alt1">
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("after gmtime, the time is: \</code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n yday = %d \</code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n wday = %d \</code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n year = %d \</code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mon = %d \</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mday = %d \</code>
</div>
<div class="line number13 index12 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n hour = %d \</code>
</div>
<div class="line number14 index13 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n min = %d \</code>
</div>
<div class="line number15 index14 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n sec = %d \</code>
</div>
<div class="line number16 index15 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n isdst =%d.\n", </code>
</div>
<div class="line number17 index16 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_yday,</code>
</div>
<div class="line number18 index17 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_wday,</code>
</div>
<div class="line number19 index18 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_year,</code>
</div>
<div class="line number20 index19 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_mon,</code>
</div>
<div class="line number21 index20 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_mday,</code>
</div>
<div class="line number22 index21 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_hour, </code>
</div>
<div class="line number23 index22 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_min, </code>
</div>
<div class="line number24 index23 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_sec,</code>
</div>
<div class="line number25 index24 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_isdst</code>
</div>
<div class="line number26 index25 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">);</code>
</div>
<div class="line number27 index26 alt2">
<code class="xhtml spaces"> </code>
</div>
<div class="line number28 index27 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr = localtime(&t_time);</code>
</div>
<div class="line number29 index28 alt2">
</div>
<div class="line number30 index29 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("after localtime, the time is: \</code>
</div>
<div class="line number31 index30 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n yday = %d \</code>
</div>
<div class="line number32 index31 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n wday = %d \</code>
</div>
<div class="line number33 index32 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n year = %d \</code>
</div>
<div class="line number34 index33 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mon = %d \</code>
</div>
<div class="line number35 index34 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mday = %d \</code>
</div>
<div class="line number36 index35 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n hour = %d \</code>
</div>
<div class="line number37 index36 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n min = %d \</code>
</div>
<div class="line number38 index37 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n sec = %d \</code>
</div>
<div class="line number39 index38 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n isdst =%d.\n", </code>
</div>
<div class="line number40 index39 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_yday,</code>
</div>
<div class="line number41 index40 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_wday,</code>
</div>
<div class="line number42 index41 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_year,</code>
</div>
<div class="line number43 index42 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_mon,</code>
</div>
<div class="line number44 index43 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_mday,</code>
</div>
<div class="line number45 index44 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_hour, </code>
</div>
<div class="line number46 index45 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_min, </code>
</div>
<div class="line number47 index46 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_sec,</code>
</div>
<div class="line number48 index47 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tmp_ptr->tm_isdst</code>
</div>
<div class="line number49 index48 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">);</code>
</div>
<div class="line number50 index49 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">return 0;</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_527249">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">t_time = 1513841065.</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">after gmtime, the time is: </code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">yday = 354 </code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">wday = 4 </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">year = 117 </code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">mon = 11 </code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml plain">mday = 21 </code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml plain">hour = 7 </code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml plain">min = 24 </code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml plain">sec = 25 </code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml plain">isdst =0.</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml plain">after localtime, the time is: </code>
</div>
<div class="line number13 index12 alt2">
<code class="xhtml plain">yday = 354 </code>
</div>
<div class="line number14 index13 alt1">
<code class="xhtml plain">wday = 4 </code>
</div>
<div class="line number15 index14 alt2">
<code class="xhtml plain">year = 117 </code>
</div>
<div class="line number16 index15 alt1">
<code class="xhtml plain">mon = 11 </code>
</div>
<div class="line number17 index16 alt2">
<code class="xhtml plain">mday = 21 </code>
</div>
<div class="line number18 index17 alt1">
<code class="xhtml plain">hour = 15 </code>
</div>
<div class="line number19 index18 alt2">
<code class="xhtml plain">min = 24 </code>
</div>
<div class="line number20 index19 alt1">
<code class="xhtml plain">sec = 25 </code>
</div>
<div class="line number21 index20 alt2">
<code class="xhtml plain">isdst =0.</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>7、mktime</strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_769305">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t mktime(struct tm* timeptr);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
将struct tm 结构的时间转换为从1970年至今的秒数。</p>
<p>
mktime 与 gmtime/localtime 功能相反,gmtime/localtime 将time_t转换为struct tm结构体数据,mktime将struct tm重新转换为time_t类型的UTC时间</p>
<p>
<strong>使用例子:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_620559">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t t_time;</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">struct tm *tm_ptr = NULL;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">time(&t_time);</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("time_t first time value = %d.\n", t_time);</code>
</div>
<div class="line number5 index4 alt2">
</div>
<div class="line number6 index5 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr = gmtime(&t_time);</code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("time_t switch gmtime type, the time is: \</code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n yday = %d \</code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n wday = %d \</code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n year = %d \</code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mon = %d \</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mday = %d \</code>
</div>
<div class="line number13 index12 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n hour = %d \</code>
</div>
<div class="line number14 index13 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n min = %d \</code>
</div>
<div class="line number15 index14 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n sec = %d \</code>
</div>
<div class="line number16 index15 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n isdst =%d.\n", </code>
</div>
<div class="line number17 index16 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_yday,</code>
</div>
<div class="line number18 index17 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_wday,</code>
</div>
<div class="line number19 index18 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_year,</code>
</div>
<div class="line number20 index19 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_mon,</code>
</div>
<div class="line number21 index20 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_mday,</code>
</div>
<div class="line number22 index21 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_hour, </code>
</div>
<div class="line number23 index22 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_min, </code>
</div>
<div class="line number24 index23 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_sec,</code>
</div>
<div class="line number25 index24 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr->tm_isdst</code>
</div>
<div class="line number26 index25 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">);</code>
</div>
<div class="line number27 index26 alt2">
<code class="xhtml spaces"> </code>
</div>
<div class="line number28 index27 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">t_time = mktime(tm_ptr); /*重新转换为time_t类型的UTC时间,这里有一个时区的转换, 时间为0区的时间, 所以一下使用的时间都为0区的时间*/ </code>
</div>
<div class="line number29 index28 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("gmtime type switch time_t second time = %d.\n", t_time); </code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_225031">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t first time value = 1513842674.</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">time_t switch gmtime type, the time is: </code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">yday = 354 </code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">wday = 4 </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">year = 117 </code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">mon = 11 </code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml plain">mday = 21 </code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml plain">hour = 7 </code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml plain">min = 51 </code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml plain">sec = 14 </code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml plain">isdst =0.</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml plain">gmtime type switch time_t second time = 1513813874.</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>8、gettimeofday</strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_241562">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">int gettimeofday(struct timeval *tv, struct timezone *tz);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
返回当前距离1970年的秒数和微妙数,后面的tz是时区,一般不用。</p>
<p>
<strong>使用例子:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_11368">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">struct timeval time_val;</code>
</div>
<div class="line number2 index1 alt1">
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">gettimeofday(&time_val, NULL); //gettimeofday(&start,&tz);结果一样</code>
</div>
<div class="line number4 index3 alt1">
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">printf("时间秒.tv_sec: %d.\n",time_val.tv_sec);</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">printf("时间微秒.tv_usec: %d.\n",time_val.tv_usec);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_360954">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">时间秒.tv_sec:1513843633</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">时间微秒.tv_usec:689374</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>9、difftime</strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_415737">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">double difftime(time_t time1, time_t time2);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
返回两个时间相差的秒数</p>
<p>
<strong>使用例子:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_765434">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">//获得时间差</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">time_t t_start;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">time_t t_end;</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">time(&t_start);</code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">sleep(5);</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">time(&t_end);</code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("间隔时间= %f.\n", difftime(t_end, t_start));</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_901940">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">间隔时间= 5.000000.</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>10、strftime</strong></span></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_931771">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">size_t strftime( char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
使用strftime()函数将时间格式化为我们想要的格式。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_254271">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">(</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">%a 星期几的简写</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">%A 星期几的全称</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">%b 月分的简写</code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">%B 月份的全称</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">%c 标准的日期的时间串</code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml plain">%C 年份的后两位数字</code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml plain">%d 十进制表示的每月的第几天</code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml plain">%D 月/天/年</code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml plain">%e 在两字符域中,十进制表示的每月的第几天</code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml plain">%F 年-月-日</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml plain">%g 年份的后两位数字,使用基于周的年</code>
</div>
<div class="line number13 index12 alt2">
<code class="xhtml plain">%G 年分,使用基于周的年</code>
</div>
<div class="line number14 index13 alt1">
<code class="xhtml plain">%h 简写的月份名</code>
</div>
<div class="line number15 index14 alt2">
<code class="xhtml plain">%H 24小时制的小时</code>
</div>
<div class="line number16 index15 alt1">
<code class="xhtml plain">%I 12小时制的小时</code>
</div>
<div class="line number17 index16 alt2">
<code class="xhtml plain">%j 十进制表示的每年的第几天</code>
</div>
<div class="line number18 index17 alt1">
<code class="xhtml plain">%m 十进制表示的月份</code>
</div>
<div class="line number19 index18 alt2">
<code class="xhtml plain">%M 十时制表示的分钟数</code>
</div>
<div class="line number20 index19 alt1">
<code class="xhtml plain">%n 新行符</code>
</div>
<div class="line number21 index20 alt2">
<code class="xhtml plain">%p 本地的AM或PM的等价显示</code>
</div>
<div class="line number22 index21 alt1">
<code class="xhtml plain">%r 12小时的时间</code>
</div>
<div class="line number23 index22 alt2">
<code class="xhtml plain">%R 显示小时和分钟:hh:mm</code>
</div>
<div class="line number24 index23 alt1">
<code class="xhtml plain">%S 十进制的秒数</code>
</div>
<div class="line number25 index24 alt2">
<code class="xhtml plain">%t 水平制表符</code>
</div>
<div class="line number26 index25 alt1">
<code class="xhtml plain">%T 显示时分秒:hh:mm:ss</code>
</div>
<div class="line number27 index26 alt2">
<code class="xhtml plain">%u 每周的第几天,星期一为第一天 (值从0到6,星期一为0)</code>
</div>
<div class="line number28 index27 alt1">
<code class="xhtml plain">%U 第年的第几周,把星期日做为第一天(值从0到53)</code>
</div>
<div class="line number29 index28 alt2">
<code class="xhtml plain">%V 每年的第几周,使用基于周的年</code>
</div>
<div class="line number30 index29 alt1">
<code class="xhtml plain">%w 十进制表示的星期几(值从0到6,星期天为0)</code>
</div>
<div class="line number31 index30 alt2">
<code class="xhtml plain">%W 每年的第几周,把星期一做为第一天(值从0到53)</code>
</div>
<div class="line number32 index31 alt1">
<code class="xhtml plain">%x 标准的日期串</code>
</div>
<div class="line number33 index32 alt2">
<code class="xhtml plain">%X 标准的时间串</code>
</div>
<div class="line number34 index33 alt1">
<code class="xhtml plain">%y 不带世纪的十进制年份(值从0到99)</code>
</div>
<div class="line number35 index34 alt2">
<code class="xhtml plain">%Y 带世纪部分的十进制年份</code>
</div>
<div class="line number36 index35 alt1">
<code class="xhtml plain">%z,%Z 时区名称,如果不能得到时区名称则返回空字符。</code>
</div>
<div class="line number37 index36 alt2">
<code class="xhtml plain">%% 百分号</code>
</div>
<div class="line number38 index37 alt1">
<code class="xhtml plain">)</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>使用例子:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_90360">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">time_t t_time;</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">char buf;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">struct tm* tm_ptr = NULL;</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">time(&t_time);</code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr = localtime(&t_time);</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">//2017-12-21 18:53:58</code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">strftime(buf, 64, "%Y-%m-%d %H:%M:%S", tm_ptr);</code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">strftime(buf, 64, "%Y-%m-%d --- %H:%M:%S", tm_ptr);</code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("formatTimeString = %s.\n", buf);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_414430">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">formatTimeString = 2017-12-21 18:53:58.</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">formatTimeString = 2017-12-21 --- 18:54:46.</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<span><strong>11、strptime</strong></span></p>
<p>
功能和 strftime 功能相反, 将字符串格式化为一个tm结构。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_877233">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">size_t strftime(char *s,size_t maxsize,char *format,const struct tm *timeptr);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>使用例子:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_928777">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">char buf[] = "2017-12-21 --- 18:54:46";</code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">struct tm tm_ptr;</code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">//2017-12-21 18:53:58</code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">strptime(buf, "%Y-%m-%d --- %H:%M:%S", &tm_ptr);</code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">printf("----strptime-----, the time is: \</code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n yday = %d \</code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n wday = %d \</code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n year = %d \</code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mon = %d \</code>
</div>
<div class="line number10 index9 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n mday = %d \</code>
</div>
<div class="line number11 index10 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n hour = %d \</code>
</div>
<div class="line number12 index11 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n min = %d \</code>
</div>
<div class="line number13 index12 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">\n sec = %d.\n", </code>
</div>
<div class="line number14 index13 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_yday,</code>
</div>
<div class="line number15 index14 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_wday,</code>
</div>
<div class="line number16 index15 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_year,</code>
</div>
<div class="line number17 index16 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_mon,</code>
</div>
<div class="line number18 index17 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_mday,</code>
</div>
<div class="line number19 index18 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_hour, </code>
</div>
<div class="line number20 index19 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_min, </code>
</div>
<div class="line number21 index20 alt2">
<code class="xhtml spaces"> </code><code class="xhtml plain">tm_ptr.tm_sec</code>
</div>
<div class="line number22 index21 alt1">
<code class="xhtml spaces"> </code><code class="xhtml plain">);</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>打印:</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterxhtml" id="highlighter_102217">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="xhtml plain">----strptime-----, the time is: </code>
</div>
<div class="line number2 index1 alt1">
<code class="xhtml plain">yday = 354 </code>
</div>
<div class="line number3 index2 alt2">
<code class="xhtml plain">wday = 4 </code>
</div>
<div class="line number4 index3 alt1">
<code class="xhtml plain">year = 117 </code>
</div>
<div class="line number5 index4 alt2">
<code class="xhtml plain">mon = 11 </code>
</div>
<div class="line number6 index5 alt1">
<code class="xhtml plain">mday = 21 </code>
</div>
<div class="line number7 index6 alt2">
<code class="xhtml plain">hour = 18 </code>
</div>
<div class="line number8 index7 alt1">
<code class="xhtml plain">min = 54 </code>
</div>
<div class="line number9 index8 alt2">
<code class="xhtml plain">sec = 46.</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
以上这篇linux时间函数与时间格式与字符串之间的转化方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。</p>
<p>
原文链接:http://blog.csdn.net/u013187074/article/details/78866902</p>
頁:
[1]