日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトル
目次
まえがき
リファレンス・セクション
   ≫ライブラリ関数一覧
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)


目次 索引




OpenVMS バイナリ・システム時刻を UNIX バイナリ時刻に変換します。

形式

#include <unixlib.h>

unsigned int decc$fix_time (void *vms_time);


引数



vms_time

OpenVMS バイナリ時刻を格納したクォドワードのアドレス。

unsigned int quadword[2]; 
unsigned int *vms_time = quadword; 


説明

decc$fix_timeルーチンは, OpenVMS バイナリ・システム時刻 (1858 年 11 月 17 日 00:00 からの経過時間 (100 ナノ秒単位) を格納した 64 ビット・クォドワード) を UNIX バイナリ時刻 (1970 年 1 月 1 日 00:00 からの経過時間 (秒数) を格納したロングワード) に変換します。このルーチンは,OpenVMS システム・サービスおよび RMS サービスから返されたバイナリ時刻を, ctimelocaltimeなどの HP C RTL ルーチンで使用される形式に変換するのに役立ちます。

戻り値

x 1970 年 1 月 1 日 00:00 からの経過時間 (秒数) を格納したロングワード。
( unsigned int )(-1)    エラーを示します。
戻り値 ( unsigned int )( - 1) は, 2106 年 2 月 7 日日曜日 06:28:15 という有効な日付も表すことに注意してください。


#include <unixlib.h> 
#include <stdio.h> 
#include <starlet.h>  /* OpenVMS specific SYS$ routines)  */ 
 
main() 
{ 
   unsigned int current_vms_time[2]; /*quadword for OpenVMS time*/ 
   unsigned int number_of_seconds;   /* number of seconds     */ 
 
   /* first get the current system time */ 
   sys$gettim(&current_vms_time[0]); 
 
   /* fix the time */ 
   number_of_seconds = decc$fix_time(&current_vms_time[0]); 
 
   printf("Number of seconds since 00:00 January 1, 1970 = %d", 
           number_of_seconds); 
} 

この例では, HP Cdecc$fix_timeルーチンを使用する方法を示しています。また,SYS$GETTIM システム・サービスの使い方も示しています。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.