程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> Linux C 時光函數運用

Linux C 時光函數運用

編輯:關於C++

Linux C 時光函數運用。本站提示廣大學習愛好者:(Linux C 時光函數運用)文章只能為提供參考,不一定能成為您想要的結果。以下是Linux C 時光函數運用正文


關於時光的類型:

time_t long型,表現從1970年1月1日到如今經由的秒數。

#include<time.h>
struct tm {
     int tm_sec;    /* 秒 – 取值區間為[0,59] */
     int tm_min;    /* 分 - 取值區間為[0,59] */
     int tm_hour;   /* 時 - 取值區間為[0,23] */
     int tm_mday;   /* 一個月中的日期 - 取值區間為[1,31] */
     int tm_mon;    /* 月份(從一月開端,0代表一月) - 取值區間為[0,11] */
     int tm_year;   /* 年份,其值等於現實年份減去1900 */
     int tm_wday;   /* 禮拜 – 取值區間為[0,6],個中0代表禮拜天,1代表禮拜一,以此類推 */
     int tm_yday;   /* 從每一年的1月1日開端的天數 – 取值區間為[0,365],個中0代表1月1日,1代表1月2日

 };

 普通用time_t:界說 time_t now;經由過程now =time(NULL)前往以後的時光(秒數),time函數情勢是“time_t time(time_t*)”,也能夠像如許獲得“time(&now)”。用戶看這個年夜的Long型數據是沒啥意義,普通經由過程這個函數前後獲得時光盤算時光差比擬便利。srand(unsigned(time(NULL))獲得種子的用法應用的就是這個秒數。

想清楚得獲得如今的年代日信息,就不克不及經由過程這個time_t了,須要用struct tm來顯示,而將time_t和struct tm轉換的函數就是localtime(time_t*),前往一個struct tm*類型,留意是指針類型。然後可以獲得tm中的成員,如上,皆為整形。不外留意要想獲得如今的日期還須要做一些tm_year+1900才是如今的年份,tm_mon+1才是如今的月份

假如想直接獲得時光的字符串。

用 char * asctime(const struct tm * timeptr);依據struct tm構造

或許用 char* ctime(time_t* t) ;  //依據time_t

輸入的情勢都是像如許 "Tue Jan  6 13:53:16 2015 "

留意思慮為何我們只須要界說一個struct tm*的指針,並沒有請求空間,卻可以獲得其成員?由於locatime前往指針是一個靜態變量的地址。異樣asctime也是異樣道理。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved