日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
asctime, asctime_r |
tm構造体に格納されている年月日時分秒形式の時刻を次の形式の 26 文字の文字列に変換します。
Sun Sep 16 01:03:52 1984\n\0
すべてのフィールドの幅は一定です。
#include <time.h>char *asctime (const struct tm *timeptr);
char *asctime_r (const struct tm *timeptr, char *buffer); (ISO POSIX-1)
timeptr
年月日時分秒形式の時刻を格納した tm型の構造体を指すポインタ。tm構造体は <time.h>ヘッダ・ファイルに定義されており, localtimeの説明の 表 1-4 にも示されています。
buffer
26 バイト以上の長さの文字配列を指すポインタ。この配列は,生成された日付/時刻文字列を格納するために使用されます。
asctime関数と asctime_r関数は, tmの内容を 26 文字の文字列に変換し,その文字列を指すポインタを返します。asctime_rと asctimeの相違点は, asctime_rが結果をユーザ指定バッファに格納するのに対し, asctimeは HP C RTL によって割り当てられたスレッド固有の静的メモリに結果を格納する点です。このスレッド固有の静的メモリは, ctimeまたは asctimeを再び呼び出すと,上書きされる可能性があります。保存する必要がある場合は,コピーを作成してください。
正常終了すると, asctimeは文字列を指すポインタを返します。 asctime_rは 2 番目の引数を返します。異常終了した場合は,これらの関数は NULL ポインタを返します。
tmのメンバの一覧については, localtime関数を参照してください。
注意
一般に,UTC ベースの時刻関数は,プロセス単位のデータであるメモリ内のタイム・ゾーン情報に影響を与える可能性があります。しかし,アプリケーションの実行中,システム・タイム・ゾーンが変化せず ( これは一般的なケースです ),タイム・ゾーン・ファイルのキャッシュが有効に設定されている場合 ( これはデフォルトです ),時刻関数 asctime_r, ctime_r, gmtime_r, localtime_rの _rバリアントはスレッド・セーフで,かつ AST リエントラントです。しかし,アプリケーションの実行中にシステム・タイム・ゾーンが変化する可能性がある場合や,タイム・ゾーン・ファイルのキャッシュが有効に設定されていない場合は, UTC ベースの時刻関数のバリアントはいずれも第 3 の関数クラスに属し,これはスレッド・セーフでも AST リエントラントでもありません。
x 正常終了した場合は,文字列を指すポインタ。 NULL 異常終了を示します。
目次 | 索引 |
|