Loading article…
‹テンプレート マニュアルは統合が検討されています。›
Cの日付と時刻関数は、Cプログラミング言語の標準ライブラリにある、日付と時刻の操作を実装する関数のグループです。 [1]これらは、時刻の取得、日付形式間の変換、および文字列へのフォーマットされた出力 をサポートします。
歴史
で使用される書式文字列は、strftime少なくとも1977年にリリースされたPWB/UNIX 1.0dateにまで遡ります。そのシステムコマンドには、さまざまな書式設定オプションが含まれています。[2] [3]strftime 1989年には、その他の日付と時刻関数を含むANSI C標準がリリースされました。 [4]
機能の概要
C の日付と時刻の操作は、time.h ヘッダー ファイル( C++ctimeでは header ) で定義されます。
および関連型timespecは、もともとさまざまな時間ベースを提供するためにMarkus Kuhnによって提案されましたが、 のみがTIME_UTC受け入れられました。[6]ただし、これらの機能は2020年にstd::chronoでC++に追加されました。
例
次の C ソース コードは、現在の時刻を標準出力ストリームに出力します。
#include <time.h> #include <stdlib.h> #include <stdio.h>
int main ( void ) { time_t現在の時刻; char * c_time_string ;
/* 現在の時刻を取得します。 */
current_time = time ( NULL );
if ( current_time == (( time_t ) -1 )) { ( void ) fprintf ( stderr , "現在の時刻を取得できませんでした。\n " ); exit ( EXIT_FAILURE ); }
/* ローカル時間形式に変換します。 */
c_time_string = ctime ( & current_time );
if ( c_time_string == NULL ) { ( void ) fprintf ( stderr , "現在の時刻の変換に失敗しました。\n " ); exit ( EXIT_FAILURE ); }
/* stdout に出力します。ctime() はすでに終了改行文字を追加しています。 */
( void ) printf ( "Current time is %s" , c_time_string ); exit ( EXIT_SUCCESS ); }
出力は次のようになります。
現在の時刻は 2016 年 9 月 15 日木曜日 21:18:23 です
参照
参考文献
- ^ ISO/IEC 9899:1999 仕様(PDF)。p. 351、§ 7.32.2。
- ^ 「PWB1 日付システムコマンド - マニュアルページ」www.tuhs.org。
- ^ 「PWB1のdate.cソースコード」www.tuhs.org。
- ^ 「情報システムのための米国国家規格 - プログラミング言語 - C - 日付と時刻の根拠」www.lysator.liu.se。
- ^ open-std.org - 委員会草案 -- 2005 年 5 月 6 日 355 ページ
- ^ Markus Kuhn. 「ISO C 向けの最新 API」cl.cam.ac.uk。
