cmn-clib(CommonLibraryForC)
C言語共通ライブラリ
 全て データ構造 ファイル 関数 変数 型定義 列挙型 列挙値 マクロ定義
CmnTime.h
[詳解]
1 
12 #ifndef CMNCLIB_CMN_TIME_H
13 #define CMNCLIB_CMN_TIME_H
14 
15 #include <time.h>
16 
17 #include "cmnclib/Common.h"
18 
20 typedef struct tag_CmnTimeDateTime {
21  time_t time;
22  int year;
23  int month;
24  int dayOfMonth;
25  int dayOfWeek;
26  int dayOfYear;
27  int hour;
28  int minute;
29  int second;
30  int isdst;
31  long timezone;
33 
35 typedef enum {
43 
45 #define CMN_TIME_FORMAT_SIZE_ALL (19 + 1)
46 #define CMN_TIME_FORMAT_SIZE_ALL_SHORT (14 + 1)
47 #define CMN_TIME_FORMAT_SIZE_DATE (10 + 1)
48 #define CMN_TIME_FORMAT_SIZE_DATE_SHORT ( 8 + 1)
49 #define CMN_TIME_FORMAT_SIZE_TIME ( 8 + 1)
50 #define CMN_TIME_FORMAT_SIZE_TIME_SHORT ( 6 + 1)
53 #define CMN_TIME_DATETIME_STRING_BUFFER_SIZE (160)
54 
55 /* --- CmnTime.c --- */
56 /* 現在日時を取得する */
58 /* 日時情報を作成する */
59 D_EXTERN CmnTimeDateTime* CmnTimeDateTime_Set(CmnTimeDateTime *datetime, int year, int month, int day, int hour, int minute, int second, int isdst);
60 /* 日時情報を作成する */
61 D_EXTERN CmnTimeDateTime* CmnTimeDateTime_SetBySerial(CmnTimeDateTime *datetime, time_t time);
62 /* 日時を加算する */
63 D_EXTERN CmnTimeDateTime* CmnTimeDateTime_Add(CmnTimeDateTime *datetime, int year, int month, int day, int hour, int minute, int second);
64 /* 日時を加算する */
65 D_EXTERN CmnTimeDateTime* CmnTimeDateTime_AddBySerial(CmnTimeDateTime *datetime, time_t time);
66 /* CmnTimeDateTimeを文字列に変換する */
67 D_EXTERN char* CmnTimeDateTime_ToString(const CmnTimeDateTime *datetime, char *buf);
68 /* 現在時刻文字列生成 */
69 D_EXTERN char* CmnTime_Format(const CmnTimeDateTime *datetime, const CmnTimeFormatType type, char *buf);
70 /* 指定ミリ秒スリープする */
71 D_EXTERN void CmnTime_Sleep(unsigned long long msec);
72 
73 #endif /* CMNCLIB_CMN_TIME_H */
74 
D_EXTERN char * CmnTime_Format(const CmnTimeDateTime *datetime, const CmnTimeFormatType type, char *buf)
現在時刻文字列生成
Definition: CmnTime.c:280
int isdst
Definition: CmnTime.h:30
int dayOfMonth
Definition: CmnTime.h:24
Definition: CmnTime.h:40
Definition: CmnTime.h:20
D_EXTERN char * CmnTimeDateTime_ToString(const CmnTimeDateTime *datetime, char *buf)
CmnTimeDateTimeを文字列に変換する
Definition: CmnTime.c:226
Definition: CmnTime.h:36
int month
Definition: CmnTime.h:23
D_EXTERN CmnTimeDateTime * CmnTimeDateTime_SetBySerial(CmnTimeDateTime *datetime, time_t time)
日時情報を設定する
Definition: CmnTime.c:136
D_EXTERN CmnTimeDateTime * CmnTimeDateTime_Add(CmnTimeDateTime *datetime, int year, int month, int day, int hour, int minute, int second)
日時情報を設定する
Definition: CmnTime.c:175
D_EXTERN CmnTimeDateTime * CmnTimeDateTime_SetNow(CmnTimeDateTime *datetime)
現在日時を取得する
Definition: CmnTime.c:79
Definition: CmnTime.h:38
int hour
Definition: CmnTime.h:27
Definition: CmnTime.h:41
D_EXTERN CmnTimeDateTime * CmnTimeDateTime_AddBySerial(CmnTimeDateTime *datetime, time_t time)
日時情報を設定する
Definition: CmnTime.c:210
共通関数 メインヘッダファイル
int dayOfYear
Definition: CmnTime.h:26
int second
Definition: CmnTime.h:29
time_t time
Definition: CmnTime.h:21
Definition: CmnTime.h:39
int minute
Definition: CmnTime.h:28
D_EXTERN void CmnTime_Sleep(unsigned long long msec)
指定ミリ秒スリープする
Definition: CmnTime.c:335
CmnTimeFormatType
Definition: CmnTime.h:35
int year
Definition: CmnTime.h:22
int dayOfWeek
Definition: CmnTime.h:25
struct tag_CmnTimeDateTime CmnTimeDateTime
D_EXTERN CmnTimeDateTime * CmnTimeDateTime_Set(CmnTimeDateTime *datetime, int year, int month, int day, int hour, int minute, int second, int isdst)
日時情報を設定する
Definition: CmnTime.c:103
Definition: CmnTime.h:37
long timezone
Definition: CmnTime.h:31