- 相關(guān)推薦
如何在C語言中轉(zhuǎn)換時(shí)間
本文是百分網(wǎng)小編搜索整理的關(guān)于介紹了在C語言中轉(zhuǎn)換時(shí)間的基本方法,分別是mktime()函數(shù)和localtime()函數(shù)的使用,供參考閱讀,希望對大家有所幫助!想了解更多相關(guān)信息請持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
C語言mktime()函數(shù):將時(shí)間轉(zhuǎn)換成經(jīng)過的秒數(shù)
頭文件:
#include <time.h>
定義函數(shù):
time_t mktime(strcut tm * timeptr);
函數(shù)說明:mktime()用來將參數(shù)timeptr 所指的tm 結(jié)構(gòu)數(shù)據(jù)轉(zhuǎn)換成從公元1970 年1 月1 日0 時(shí)0 分0 秒算起至今的UTC 時(shí)間所經(jīng)過的秒數(shù)。
返回值:返回經(jīng)過的秒數(shù)。
范例:用time()取得時(shí)間 (秒數(shù)), 利用localtime() 轉(zhuǎn)換成struct tm 再利用mktine()將structtm 轉(zhuǎn)換成原來的秒數(shù)。
#include <time.h>
main(){
time_t timep;
strcut tm *p;
time(&timep);
printf("time() : %d \n", timep);
p = localtime(&timep);
timep = mktime(p);
printf("time()->localtime()->mktime():%d\n", timep);
}
執(zhí)行結(jié)果:
time():974943297 time()->localtime()->mktime():974943297
C語言localtime()函數(shù):獲取當(dāng)前時(shí)間和日期并轉(zhuǎn)換為本地時(shí)間
頭文件:
#include <time.h>
定義函數(shù):
struct tm *localtime(const time_t * timep);
函數(shù)說明:localtime()將參數(shù)timep 所指的time_t 結(jié)構(gòu)中的信息轉(zhuǎn)換成真實(shí)世界所使用的時(shí)間日期表示方法,然后將結(jié)果由結(jié)構(gòu)tm 返回。結(jié)構(gòu)tm 的定義請參考gmtime()。此函數(shù)返回的時(shí)間日期已經(jīng)轉(zhuǎn)換成當(dāng)?shù)貢r(shí)區(qū)。
返回值:返回結(jié)構(gòu)tm 代表目前的當(dāng)?shù)貢r(shí)間。
范例
#include <time.h>
main(){
char *wday[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
time_t timep;
struct tm *p;
time(&timep);
p = localtime(&timep); //取得當(dāng)?shù)貢r(shí)間
printf ("%d%d%d ", (1900+p->tm_year), (l+p->tm_mon), p->tm_mday);
printf("%s%d:%d:%d\n", wday[p->tm_wday], p->tm_hour, p->tm_min, p->tm_sec);
}
執(zhí)行結(jié)果:
2000/10/28 Sat 11:12:22
【如何在C語言中轉(zhuǎn)換時(shí)間】相關(guān)文章:
C語言基礎(chǔ)之?dāng)?shù)據(jù)類型轉(zhuǎn)換09-23
C++類的轉(zhuǎn)換10-17
如何在C語言中調(diào)用C++做的動態(tài)鏈接庫08-15
PHP時(shí)間轉(zhuǎn)換Unix時(shí)間戳代碼08-19
c語言空間換時(shí)間優(yōu)化代碼的技巧方法06-19