可搬用手続:表

注意:これらの手続を使用するプログラムは USE DFPORT で可搬用ライブラリーを引用しなければなりません。大括弧 [...] で囲まれているものは省略可能な引数を表しています。

名前 手続型 説明 引数/関数の型
ABORT サブルーチン CALL ABORT([string])

すべての I/O バッファをフラッシし,閉じ,そして string の省略可能な中止メッセージを出力して実行を終了します。
stringCHARACTER*(*)
ACCESS 関数 ACCESS(name,mode)

mode モードで呼び出し側が name で指定したファイルに参照許可があるかどうかを検証します。
nameCHARACTER*(*)

modeCHARACTER*(*)

結果:INTEGER(4)
ALARM 関数 ALARM(time,proc)

time 秒経過した後,サブルーチン proc を実行します。
timeINTEGER(4)

proc:外部手続

結果:INTEGER(4)
BESJ0, BESJN, BESJ1, BESY0, BESY1, BESYN 関数 それぞれ 1,2,および n 次の第 1 種および第 2 種ベッセル関数の単精度値を返します。

BESJ0(x)BESJ1(x)BESY0(x)BESY1(x) は x の引数をとります。

BESJN(n,x) および BESYN(n,x)nx の引数をとります。
nINTEGER(4)

xREAL(4)

結果:REAL(4)
BIC, BIS, BIT サブルーチンと関数 ビットをクリアし,設定するサブルーチンおよびビット検証関数です。

CALL BIC(bitnum,target) はビットをクリアします。

CALL BIS(bitnum,target) はビットを設定します。

BIT(bitnum,source) はビットを検証します。
bitnumINTEGER(4)

targetINTEGER(4)

sourceINTEGER(4)

BIT からの結果:論理型
CHDIR 関数 CHDIR(dir_name)

基本ディレクトリを dir_name に変更します。
dir_nameCHARACTER*(*)

結果:INTEGER(4)
CHMOD 関数 CHMOD(name,mode)

name で指定したファイルの属性を mode に変更します。
nameCHARACTER*(*)

modeCHARACTER*(*)

結果:INTEGER(4)
CLOCK 関数 CLOCK()

HH:MM:SS 書式で時刻を返します。
結果:CHARACTER(8)
CTIME 関数 CTIME(stime)

システム時刻を 24 文字 ASCII 文字列に変換します。
stimeINTEGER(4)

結果:CHARACTER(24)
DATE サブルーチンまたは関数 CALL DATE(string)
または
DATE()

日付を ASCII 文字列で返します。
stringCHARACTER*(*)

DATE 関数からの結果:CHARACTER(8)
DBESJ0, DBESJ1, DBESJN, DBESY0, DBESY1, DBESYN 関数 それぞれ 1,2,および n 次の第 1 種および第 2 種ベッセル関数の倍精度値を返します。

DBESJ0(x)DBESJ1(x)DBESY0(x)DBESY1(x)x の引数をとります。

DBESJN(n,x) および DBESYN(n,x)nx の引数をとります。
nINTEGER(4)

xREAL(8)

結果:REAL(8)
DRAND, DRANDM 関数 DRAND(iflag)
および
DRANDM(iflag)

iflag の値に従って選択された 0.0 ~ 1.0 の範囲の乱数を返します。
iflagINTEGER(4)

結果:REAL(8)
DTIME 1 関数 DTIME(tarray)

最後に DTIME が呼び出された時,またはプログラム開始時からの経過時間を返します。
tarray(2)REAL(4)

結果:REAL(4)
ETIME 1 関数 ETIME(tarray)

最後に ETIME が呼び出された時,またはプログラム開始時からの経過 CPU 時間を返します。
tarray(2)REAL(4)

結果:REAL(4)
FDATE サブルーチンまたは関数 CALL FDATE(string)
または
FDATE()

日時を ASCII 文字列で返します。
stringCHARACTER*(*)

FDATE 関数からの結果:CHARACTER(24)
FGETC 関数 FGETC(lunit,char)

lunit からの次の利用可能な文字を読み取り,char に書き込みます。
lunitINTEGER(4)

charCHARACTER(1)

結果:INTEGER(4)
FLUSH サブルーチン CALL FLUSH(lunit)

lunit バッファの内容を関連するファイルに書き出させます。
lunitINTEGER(4)
FPUTC 関数 FPUTC(lunit,char)

通常の Fortran I/O を使わずに lunit に関連したファイルに文字 char を書き出します。
lunitINTEGER(4)

charCHARACTER(1)

結果:INTEGER(4)
FSEEK サブルーチン FSEEK(lunit,offset,from)

from から相対的に offset バイトに論理装置上のファイルの位置を変更します。
lunitINTEGER(4)

offsetINTEGER(4)

fromINTEGER(4)

結果:INTEGER(4)
FSTAT 関数 FSTAT(lunit,statb)

lunit に関する情報を配列 statb に返します。
lunitINTEGER(4)

statb(12)INTEGER(4)

結果:INTEGER(4)
FTELL 関数 FTELL(lunit)

ファイルの開始点からのバイト・オフセットとして lunit に関連したファイルの現在位置を返します。
lunitINTEGER(4)

結果:INTEGER(4)
GERROR サブルーチン CALL GERROR(string)

最後に検知した IERRNO エラーのメッセージを string に書き込みます。
stringCHARACTER*(*)
GETC 関数 GETC(char)

通常の Fortran I/O を使わずに,通常コンソールに接続された論理装置 5 から次の利用可能な文字を得ます。
charCHARACTER(1)

結果:INTEGER(4)
GETCWD 関数 GETCWD(dirname)

現在の作業ディレクトリを dirname に書き込みます。
dirnameCHARACTER*(*)

結果:INTEGER(4)
GETENV 関数 CALL GETENV(ename,evalue)

ename=evalue の形式の文字列を環境一覧で検索し,見つかった結果を evalue に返します。見つからない場合,空白が返されます。
enameCHARACTER*(*)

evalueCHARACTER*(*)
GETGID 関数 GETGID()

互換性のために含まれています。常に 1 を返します。
結果:1 と等しい INTEGER(4)
GETLOG サブルーチン CALL GETLOG(name)

ユーザーのログイン名を返します。なければ空白が返されます。
nameCHARACTER*(*)
GETPID 関数 GETPID()

現在のプロセスのプロセス ID 番号を返します。
結果:INTEGER(4)
GETUID 関数 GETUID()

互換性のために含まれています。常に 1 を返します。
結果:1 と等しい INTEGER(4)
GMTIME サブルーチン CALL GMTIME(stime,tarray)

stimeTIME() から返された時刻を GMT 日時に分割し,tarray に保存します。
stimeINTEGER(4)

tarray(9)INTEGER(4)
HOSTNAM 関数 HOSTNAM(name)

現在のホスト名を name に書き込みます。
nameCHARACTER*(*)

結果:INTEGER(4)
IARGC 関数 IARGC()

最後のコマンド行引数の指標を返します。
結果:INTEGER(4)
IDATE サブルーチン CALL IDATE(iarray)
または
CALL IDATE(month,day,year)

iarray に日,月,および年を返すか,またはパラメタ monthday,および year に返します。
iarray(3)INTEGER(4)

monthINTEGER(4)

dayINTEGER(4)

yearINTEGER(4)
IERRNO 関数 IERRNO()

最後の IERRNO エラー・コードを返します。
結果:INTEGER(4)
IRAND, IRANDM 関数 IRAND(iflag) および IRANDM(iflag)

iflag の値に従って選択された 0 ~ (2**31) -1 の範囲の整数乱数を返します。
iflagINTEGER(4)

結果:INTEGER(4)
ITIME サブルーチン CALL ITIME(iarray)

iarray に現在の時刻を返します。
iarray(3)INTEGER(4)
JDATE 関数 JDATE()

YYDDD の書式でユリウス暦の日付を返します。
結果:CHARACTER(8)
KILL 関数 KILL(pid,signum)

(SIGNAL で定義される) signum で示されたシグナルを (GETPID で返される) pid で示された呼び出しプロセスに送信します。
pidINTEGER(4)

signumINTEGER(4)

結果:INTEGER(4)
LNBLNK 関数 LNBLNK(string)

string 中の最後の非空白文字の指標を返します。
stringCHARACTER*(*)

結果:INTEGER(4)
LONG 関数 LONG(int2)

INTEGER(2) 引数を INTEGER(4) として返します。
int2INTEGER(2)

結果:INTEGER(4)
LSTAT 関数 LSTAT(name,statb)

ファイル名 name に関する情報を配列 statb に返します。
nameCHARACTER*(*)

statb(12)INTEGER(4)

結果:INTEGER(4)
LTIME サブルーチン CALL LTIME(stime,tarray)

stimeTIME() で返される時刻をローカル時間帯の日時に分割し,tarray に保存します。
stimeINTEGER(4)

tarray(9)INTEGER(4)
PERROR サブルーチン CALL PERROR(string)

最後に検出された IERRNO エラーに対するメッセージを持つ string を先に送った後,標準エラー・ストリームにエラー・メッセージを送信します。
stringCHARACTER*(*)
PUTC 関数 PUTC(char)

論理装置 6 に文字 char を書き出します。
charCHARACTER(1)

結果:INTEGER(4)
QSORT サブルーチン CALL QSORT(array,len,isize,compar)

ユーザー定義関数 compar のソート順で各要素の長さが sizelen 個の配列 array をソートします。
array:任意の型
lenINTEGER(4)

isizeINTEGER(4)

compar:外部 INTEGER(2) 関数
RAN 関数 RAN(iseed)

0.0 ~ 1.0 の範囲で一様分布の乱数を返します。
seedINTEGER(4)

結果:REAL(4)
RAND, RANDOM 関数 RAND(iflag)
および
RANDOM(iflag)

iflag の値に従って選択された 0.0 ~ 1.0 の範囲の乱数を返します。
iflagINTEGER(4)

結果:REAL(4)
RENAME 関数 RENAME(from,to)

ファイル名を from から to に変更します。to が存在する場合,既存のファイルは削除されます。
fromCHARACTER*(*)

toCHARACTER*(*)

結果:INTEGER(4)
RINDEX 関数 RINDEX(string,substr)

stringsubstr が最後に現れる指標を返します。現れなければ 0 が返されます。
stringCHARACTER*(*)

substrCHARACTER*(*)

結果:INTEGER(4)
RTC 関数 RTC()

グリニッジ平均時 1970 年 1 月 1 日 00:00:00 からの秒数を返します。
結果:REAL(8)
SECNDS 関数 SECNDS(offset)

真夜中からの経過秒数から offset を引いた値を返します。
offsetREAL(4)

結果:REAL(4)
SHORT 関数 SHORT(int4)

INTEGER(4) 引数を INTEGER(2) として返します。
int4INTEGER(4)

結果:INTEGER(2)
SIGNAL 関数 SIGNAL(signum,proc,flag)

signum で示されたシグナルに対して取る動作を外部シグナル処理手続 proc に変更します。proc の実装は flag で制御されます。
signumINTEGER(4)

proc:外部 関数

flagINTEGER(4)

結果:INTEGER(4)
SLEEP サブルーチン CALL SLEEP(itime)

itime 秒間呼び出しプロセスを停止します。
itimeINTEGER(4)
STAT 関数 STAT(name,statb)

ファイル名 name に関する情報を配列 statb に返します。
nameCHARACTER*(*)

statb(12)INTEGER(4)

結果:INTEGER(4)
SYSTEM 関数 SYSTEM(string)

あたかも string がコマンドとしてタイプされたかのように入力としてシェルに string を与えます。
stringCHARACTER*(*)

結果:INTEGER(4)
TIME サブルーチンまたは関数 CALL TIME(string)
または
TIME()

サブルーチンとしては,現在の時刻を書式 HH:MM:SS で string に書き込みます。関数としては,グリニッジ平均時 1970 年 1 月 1 日 00:00:00 からの経過秒数を返します。
stringCHARACTER(8)

結果:INTEGER(4)
TIMEF 関数 TIMEF()

この関数が最初に呼び出された時からの秒数を返します。第 1 回目の呼び出しでは,TIMEF は 0.0D0 を返します。
結果:REAL(8)
UNLINK 関数 UNLINK(name)

パス name で指定されたファイルを削除します。
nameCHARACTER*(*)

結果:INTEGER(4)
1 WNT のみ

警告:DATEIDATE,および JDATE が返す 2 けたの年は,2000 年問題を引き起こす可能性があります。代わりに,DATE_AND_TIME を使ってください。

これらの手続の使い方についての詳細は,「可搬用ライブラリー」を参照してください。