関数名:asctime
ヘッダー ファイル: <time.h>
関数プロトタイプ: char *asctime(const struct tm *t);
機能: 指定された日付と時刻を ASCII コードに変換します
パラメータ: tm は変換される構造体です
戻り値: 変換された文字列ポインタを返します。
補充:
1. 指定されたカレンダー時刻 tm を、次の固定 25 文字形式のテキスト表現に変換します。
DDD MMM dd hh:mm:ss YYYY
DDD 曜日 (月など)
MMM 月 (1 月など)
月の dd 日 (1,2,…,31)
hh 時間 (1、2、…、24)
mm 分 (1,2,…,59)
ss 秒 (1,2,…,59)
YYYY年+1900
いずれかのメンバー *time_ptr が通常の範囲外である場合、動作は未定義です
指定された time_ptr->tm_year 暦年が 4 桁を超えるか、1000 年未満の場合、動作は明確です。
この関数はローカライズをサポートしていないため、改行を削除できません。
2. 構造体 *tm{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday // 月の日数
int tm_mon //月
int tm_year;
int tm_wday //週
int tm_yday // 年間の日数
int tm_isdst; // 夏時間が実施されている場合、tm_isdst は正の値になります。サマータイムが実施されていない場合は tm_isdst が 0、状況が理解できない場合は tm_isdst() が負になります。
}
プログラム例:時間構造体 t を文字列の時間記述に変換し、結果を出力する
#include<time.h>#include<stdio.h>#include<string.h>intmain(void){structtmt;charstr[80];t.tm_sec=1;t.tm_min=30;t.tm_hour=9 ;t.tm_mday=22;t.tm_mon=11;t.tm_year=56;t.tm_wday=4;t.tm_yday=0;//表示しない t.tm_isdst=0;//夏時間を導入しないstrcpy(str ,asctime(&t));printf(%sn,str);return0;}実行結果:
木12月2209:30:011956