asctime

tm構造体を文字列へ変換

【書式】
#include <time.h>
char *asctime(const struct tm *tblock);

【説明】
tblockが指すtm構造体に格納されている時刻を文字列に変換して返却します。
文字列例 : "Fri May 11 21:44:53 2001\n\0"
意味   :  曜日 月 日 時:分:秒 年(西暦)\n\0
   '\n'が入っていることに注意

【引数】
const struct tm *tblock : tm構造体へのポインタ
構造体 tm はtime.h の中で宣言され、以下の情報を含みます
struct tm {
  int tm_sec;      /* 秒 [0-61] 最大2秒までのうるう秒を考慮 */
  int tm_min;      /* 分 [0-59] */
  int tm_hour;     /* 時 [0-23] */
  int tm_mday;     /* 日 [1-31] */
  int tm_mon;      /* 月 [0-11] 0から始まることに注意 */
  int tm_year;     /* 年 [1900からの経過年数] */
  int tm_wday;     /* 曜日 [0:日 1:月 ... 6:土] */
  int tm_yday;     /* 年内の通し日数 [0-365] 0から始まることに注意*/
  int tm_isdst;    /* 夏時間が無効であれば 0 */
};
(参考) const型修飾子
const修飾子が付けられた引数は、値が変更されないことを保証されています。
const修飾子を付けた変数やポインタの指す内容が変更される場合、コンパイル時にエラーとなります。

【戻り値】
変換文字列を指すポインタ

【使用例】
#include <stdio.h>
#include <time.h>

int main(void)
{
   time_t timer;
   struct tm *t_st;

   /* 現在時刻の取得 */
   time(&timer);

   /* 現在時刻を構造体に変換 */
   t_st = localtime(&timer);

   /* tm構造体を文字列に変換 */
   printf("%s",asctime(t_st));

   return 0;
}
※ 単にtime関数で取得した現在時刻を文字列に変換する場合は、ctime関数の方が適しているでしょう。

【実行結果例】
Sun May 20 15:04:24 2001

戻る


banner
初心者のためのポイント学習C言語」
Copyright(c) 2000-2004 TOMOJI All Rights Reserved