常用時間函數

比較常用的時間函數有time(),localtime(),asctime(),和gmtime()。

函數time()的原型爲:

time_t time(time_t *time);

函數time()返回系統的當前日曆時間,如果系統丟失時間設置,則函數返回-1。

對函數time的調用,既可以使用空指針,也可以使用指向time_t類型變量的指針。

函數localtime()的原型爲:

struct tm*localtime(const time_t *time);

函數localtime(),指向以tm結構形式time(時間)的一個指針。該事件表示爲本地時間(計算機上的時間)。

變元time指針一般通過調用函數time()獲得。

函數asctime()的原型爲:

char *asctime(const struct tm*ptr);

函數asctime()返回指向一個串的指針,其中保存ptr所指結構中存儲的信息的變換形式,

具體格式如下:

day month date hours:minutes:seconds year \n \0

例如:

Fir Apr 15 9:15:12 2015

由ptr指向的結構一般是通過調用localtime()或gmtime()得到的。

保存asctime()返回的格式化時間串空間是靜態空間變量,因此每次調用asctime()

時都用新串沖掉該靜態字符數組中的原值。希望保存以前的結果是,應該複製它到別處。

函數gmtime的原型爲:

struct tm *gmtime(const time_t *time);

函數gmtime()返回一個指針,指針指向以tm結構形式的分解格式time。時間用UTC(coordinated

universal time)即格林尼治時間表示,time指針一般是通過調用time()取得。

如果系統不支持UTC,則該函數返回空指針。

#include<stdio.h>
#include<time.h>
int main()
{
	struct tm*local;
	time_t tm;
	tm=time(NULL);
	local=localtime(&tm);
	printf("Local time and date: %s\n",asctime(local));
	local=gmtime(&tm);
	printf("UTC time and date: %s\n",asctime(local));
	return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章