-非原創,轉載自網絡-
利用C語言的時間函數time和localtime,具體說明如下:
一、函數接口介紹:
1、time函數。
形式為time_t time (time_t *__timer);
其中time_t為time.h定義的結構體,一般為長整型。
這個函數會獲取當前時間,並返回。 如果參數__timer非空,會存儲相同值到__timer指向的內存中。
time函數返回的為unix時間戳,即從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒。
由於是秒作為單位的,所以這並不是習慣上的時間,要轉為習慣上的年月日時間形式就需要另外一個函數了。
2、localtime函數。
形式為struct tm *localtime (const time_t *__timer);
其中tm為一個結構體,包含了年月日時分秒等信息。
這種結構是適合用來輸出的。
二、參考代碼:
1
2
3
4
5
6
7
8
9
10
11
|
#include <stdio.h>
#include <time.h>
int
main ()
{
time_t
t;
struct
tm
* lt;
time
(&t);
//獲取Unix時間戳。
lt =
localtime
(&t);
//轉為時間結構。
printf
(
"%d/%d/%d %d:%d:%d\n"
,lt->tm_year+1900, lt->tm_mon, lt->tm_mday, lt->tm_hour, lt->tm_min, lt->tm_sec);
//輸出結果
return
0;
}
|
注意事項:
struct tm中的tm_year 值為實際年減去1900, 所以輸出的時候要是lt->tm_year+1900。