您好,登錄后才能下訂單哦!
這篇文章主要介紹linux下如何使用time(NULL)函數和localtime()獲取當前時間,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Linux是一種免費使用和自由傳播的類UNIX操作系統,是一個基于POSIX的多用戶、多任務、支持多線程和多CPU的操作系統,使用Linux能運行主要的Unix工具軟件、應用程序和網絡協議。
time(); 函數
函數原型: time_t time(time_t *timer)
函數用途: 得到機器的日歷時間或者設置日歷時間
頭 文 件: time.h
輸入參數: timer=NULL時,得到機器日歷時間, =時間數值時 用于設置日歷時間;
time_t是一個long類型
/* time - 獲取計算機系統當前的日歷時間(Calender Time) * 處理日期時間的函數都是以本函數的返回值為基礎進行運算 * * 函數原型: * #include <time.h> * * time_t time(time_t *calptr); * * 返回值: * 成功:秒數,從1970-1-1,00:00:00 * * 使用: * time_t now; * * time(&now); // == now = time(NULL); */
localtime();函數
函數原型: struct tm *localtime(const time_t *timer)
函數用途: 返回一個以tm結構表達的機器時間信息
頭 文 件: time.h
輸入參數: timer:使用time()函數獲得的機器時間;
/* * localtime - 將時間數值變換成本地時間,考慮到本地時區和夏令時標志 * * 函數聲明: * #include <time.h> * * struct tm * localtime(const time_t *timer); * */
//結構tm的定義為: struct tm { int tm_sec; /* Seconds: 0-59 (K&R says 0-61?) */ int tm_min; /* Minutes: 0-59 */ int tm_hour; /* Hours since midnight: 0-23 */ int tm_mday; /* Day of the month: 1-31 */ int tm_mon; /* Months *since* january: 0-11 */ int tm_year; /* Years since 1900 */ int tm_wday; /* Days since Sunday (0-6) */ int tm_yday; /* Days since Jan. 1: 0-365 */ int tm_isdst; /* +1 Daylight Savings Time, 0 No DST, * -1 don't know */ };
既然time_t實際上是長整型,到未來的某一天,從一個時間點(一般是1970年1月1日0時0分0秒)到那時的秒數(即日歷時間)超出了長整形所能表示的數的范圍怎么辦?對time_t數據類型的值來說,它所表示的時間不能晚于2038年1月18日19時14分07秒。為了能夠表示更久遠的時間,一些編譯器廠商引入了64位甚至更長的整形數來保存日歷時間。比如微軟在Visual C++中采用了__time64_t數據類型來保存日歷時間,并通過_time64()函數來獲得日歷時間(而不是通過使用32位字的time()函數),這樣就可以通過該數據類型保存3001年1月1日0時0分0秒(不包括該時間點)之前的時間。
/* * time(); * @author 李政 <1244109467@qq.com> */ #include <time.h> #include <stdio.h> int main(int argc, char* argv[]) { struct tm *tp; time_t t = time(NULL); tp = localtime(&t); printf("%d/%d/%d\n",tp->tm_mon+1,tp->tm_mday,tp->tm_year+1900); printf("%d:%d:%d\n",tp->tm_hour,tp->tm_min,tp->tm_sec); return 0; }
以上是“linux下如何使用time(NULL)函數和localtime()獲取當前時間”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。