在c語言的標頭檔案time.h中,定義了日期和時間的資料型別以及函式。c語言中有兩種方式表示時間日期的值:time_t型別和struct tm型別。
以下是time.h標頭檔案的常用的時間資料型別截圖:
typedef long clock_t;
typedef _int32 _time32_t;
typedef _time32_t time_t;
struct tm ;
以下是time.h標頭檔案的常用的時間函式原型截圖:
一、
time_t __cdecl time(time_t *_time);//返回從1970-1-1,00:00:00到現在經歷的秒數
time_t是乙個long型別的值(typedef重新命名),一般不能根據其值確定具體的年、月、日等資料。但是卻可以通過time()函式獲得time_t型別的計算機系統當前的日曆時間。time()傳入乙個time_t的指標變數,該變數的內容經過運算就變位秒數。當然它也可以返回乙個相同秒數內容的值賦值給另乙個time_t型別變數,兩個變數的內容都相等。
二、
struct tm *__cdecl localtime(const time_t *_time)
將time()返回的秒數數值轉換成本地時間,同時考慮本地時區和夏令時標誌。將上面time()函式隨便乙個time_t型別變數取位址當做實參傳入該函式,然後返回乙個指向struct tm型別的結構體指標型別,接著再用指標成員運算費「->」取出 年-月-日 時:分:秒
三、
char *__cdecl asctime(const struct tm *_tm)//將結構體指標*_tm所指向的結構體轉換為字串形式
與
char *__cdecl ctime(const time_t *_time)//將time_t型別指標*_tm指向的日曆時間轉換為字串形式
實現效果相同:都是將時間轉換成字串形式,兩個函式等價。
兩者的區別是:asctime()函式傳入的實參是localtime()的返回值;ctime()函式傳入的引數是time()的返回值。
四、
struct tm *__cdecl gmtime(const time_t *_time)//返回的時間日期未經時區轉換,是utc時間(又稱世界時間,即格林尼治時間)
與localtime()功能相同,實參傳入time()返回的乙個struct tm型別指標,在此基礎上還需要asctime()函式將指向的結構體轉換成字串形式,然後列印輸出。
#include
#include
//定義了日期和時間的資料型別以及函式
intmain
(void
)
C語言 time h 標準庫學習總結
三 時間函式 c語言中使用時間和日期函式時,需要新增標頭檔案,clock t和time t是兩個表示時間的算數型別,struct tm用於儲存日曆時間的各個組成部分。clock t定義 ifndef clock t defined define clock t defined 避免重複定義 cloc...
c語言time h函式庫小結
一 重要的巨集 clocks per sec 每秒鐘的滴答數 clock t 滴答計數型別 time t 日曆時間的秒計數 二 重要資料型別 struct tm 年月日等得細分時間資料結構 三 全部函式 clock t clock void 返回本程式自啟動來,流逝的時鐘滴答數。double dif...
C語言標準庫
ctype.h是c標準函式庫中的標頭檔案 定義了一批c語言字元 分類函式 c character classification functions 用於測試字元是否屬於特定的字元類別,如字母字元 控制字元等等 ctype.h的c標準庫的標頭檔案中提供的宣告幾個有用的函式測試和字元對映。yiibai....