|
cmn-clib(CommonLibraryForC)
C言語共通ライブラリ
|
日付/時刻系 共通関数 I/Fヘッダファイル [詳解]
データ構造 | |
| struct | tag_CmnTimeDateTime |
マクロ定義 | |
| #define | CMN_TIME_FORMAT_SIZE_ALL (19 + 1) |
| #define | CMN_TIME_FORMAT_SIZE_ALL_SHORT (14 + 1) |
| #define | CMN_TIME_FORMAT_SIZE_DATE (10 + 1) |
| #define | CMN_TIME_FORMAT_SIZE_DATE_SHORT ( 8 + 1) |
| #define | CMN_TIME_FORMAT_SIZE_TIME ( 8 + 1) |
| #define | CMN_TIME_FORMAT_SIZE_TIME_SHORT ( 6 + 1) |
| #define | CMN_TIME_DATETIME_STRING_BUFFER_SIZE (160) |
型定義 | |
| typedef struct tag_CmnTimeDateTime | CmnTimeDateTime |
列挙型 | |
| enum | CmnTimeFormatType { CMN_TIME_FORMAT_ALL, CMN_TIME_FORMAT_ALL_SHORT, CMN_TIME_FORMAT_DATE, CMN_TIME_FORMAT_DATE_SHORT, CMN_TIME_FORMAT_TIME, CMN_TIME_FORMAT_TIME_SHORT } |
関数 | |
| D_EXTERN CmnTimeDateTime * | CmnTimeDateTime_SetNow (CmnTimeDateTime *datetime) |
| 現在日時を取得する [詳解] | |
| D_EXTERN CmnTimeDateTime * | CmnTimeDateTime_Set (CmnTimeDateTime *datetime, int year, int month, int day, int hour, int minute, int second, int isdst) |
| 日時情報を設定する [詳解] | |
| D_EXTERN CmnTimeDateTime * | CmnTimeDateTime_SetBySerial (CmnTimeDateTime *datetime, time_t time) |
| 日時情報を設定する [詳解] | |
| D_EXTERN CmnTimeDateTime * | CmnTimeDateTime_Add (CmnTimeDateTime *datetime, int year, int month, int day, int hour, int minute, int second) |
| 日時情報を設定する [詳解] | |
| D_EXTERN CmnTimeDateTime * | CmnTimeDateTime_AddBySerial (CmnTimeDateTime *datetime, time_t time) |
| 日時情報を設定する [詳解] | |
| D_EXTERN char * | CmnTimeDateTime_ToString (const CmnTimeDateTime *datetime, char *buf) |
| CmnTimeDateTimeを文字列に変換する [詳解] | |
| D_EXTERN char * | CmnTime_Format (const CmnTimeDateTime *datetime, const CmnTimeFormatType type, char *buf) |
| 現在時刻文字列生成 [詳解] | |
| D_EXTERN void | CmnTime_Sleep (unsigned long long msec) |
| 指定ミリ秒スリープする [詳解] | |
日付/時刻系 共通関数 I/Fヘッダファイル
日付/時刻系共通関数を使用するためのI/Fヘッダファイル。
日付/時刻系の共通関数を使用する場合は、このヘッダファイルを読み込むこと
| #define CMN_TIME_DATETIME_STRING_BUFFER_SIZE (160) |
時刻文字列のバッファ長
| #define CMN_TIME_FORMAT_SIZE_ALL (19 + 1) |
フォーマット後の日付/時刻文字列長 形式:yyyy/mm/dd hh:mm:ss
| #define CMN_TIME_FORMAT_SIZE_ALL_SHORT (14 + 1) |
形式:yyyymmddhhmmss
| #define CMN_TIME_FORMAT_SIZE_DATE (10 + 1) |
形式:yyyy/mm/dd
| #define CMN_TIME_FORMAT_SIZE_DATE_SHORT ( 8 + 1) |
形式:yyyymmdd
| #define CMN_TIME_FORMAT_SIZE_TIME ( 8 + 1) |
形式:hh:mm:ss
| #define CMN_TIME_FORMAT_SIZE_TIME_SHORT ( 6 + 1) |
形式:hhmmss
| typedef struct tag_CmnTimeDateTime CmnTimeDateTime |
日付時刻情報
| enum CmnTimeFormatType |
| D_EXTERN char* CmnTime_Format | ( | const CmnTimeDateTime * | datetime, |
| const CmnTimeFormatType | type, | ||
| char * | buf | ||
| ) |
現在時刻文字列生成
現在時刻を指定されたフォーマットに従ってバッファに出力する。
指定可能なフォーマットについては、引数typeの項を参照のこと。
| datetime | (I) フォーマットする日付時刻 |
| type | (I) フォーマットタイプ。以下のものを指定すること
|
| buf | (O) フォーマット後の文字列が格納されるバッファ。 必要なバッファサイズは、以下のマクロから得られる。
|
| D_EXTERN void CmnTime_Sleep | ( | unsigned long long | msec | ) |
指定ミリ秒スリープする
| msec | スリープする時間(ミリ秒) |
| D_EXTERN CmnTimeDateTime* CmnTimeDateTime_Add | ( | CmnTimeDateTime * | datetime, |
| int | year, | ||
| int | month, | ||
| int | day, | ||
| int | hour, | ||
| int | minute, | ||
| int | second | ||
| ) |
日時情報を設定する
引数で指定された日時をdatetimeに設定する。
加減算する値(year~second)には通常の時刻表記の上限を超えて設定可能。
例:monthに12を超える数字、dayに31を超える数字を指定可能。
2020/11/1 にday=40を加算した場合、datetimeは2020/12/10となる。
| datetime | 計算元となる日時 |
| year | 加減算する西暦年 |
| month | 加減算する月 |
| day | 加減算する日 |
| hour | 加減算する時 |
| minute | 加減算する分 |
| second | 加減算する秒 |
| D_EXTERN CmnTimeDateTime* CmnTimeDateTime_AddBySerial | ( | CmnTimeDateTime * | datetime, |
| time_t | time | ||
| ) |
日時情報を設定する
引数で指定されたtimeをdatetimeに設定する。
| datetime | 計算元となる日時 |
| time | 加減算する時間(1970/01/01 00:00:00 をゼロとした経過秒) |
| D_EXTERN CmnTimeDateTime* CmnTimeDateTime_Set | ( | CmnTimeDateTime * | datetime, |
| int | year, | ||
| int | month, | ||
| int | day, | ||
| int | hour, | ||
| int | minute, | ||
| int | second, | ||
| int | isdst | ||
| ) |
日時情報を設定する
引数で指定された日時をdatetimeに設定する
| datetime | 日時を設定する先 |
| year | 西暦年 |
| month | 月(1 - 12) |
| day | 日(1 - 31) |
| hour | 時(0 - 23) |
| minute | 分(0 - 59) |
| second | 秒(0 - 59) |
| isdst | 夏時間(夏時間の場合は1、そうでなければ0、不明の場合は-1) |
| D_EXTERN CmnTimeDateTime* CmnTimeDateTime_SetBySerial | ( | CmnTimeDateTime * | datetime, |
| time_t | time | ||
| ) |
日時情報を設定する
引数で指定された日時をdatetimeに設定する
| datetime | 日時を設定する先 |
| time | 1970/01/01 00:00:00 をゼロとした経過秒 |
| D_EXTERN CmnTimeDateTime* CmnTimeDateTime_SetNow | ( | CmnTimeDateTime * | datetime | ) |
現在日時を取得する
現在日時をdatetimeに設定する。
| datetime | 日時を設定する先 |
| D_EXTERN char* CmnTimeDateTime_ToString | ( | const CmnTimeDateTime * | datetime, |
| char * | buf | ||
| ) |
CmnTimeDateTimeを文字列に変換する
| datetime | 変換するCmnTimeDateTime |
| buf | 変換後文字列を格納するバッファ。バッファサイズはCMN_TIME_DATETIME_STRING_BUFFER_SIZE以上であること。 |