Sun Studio 12: Fortran ライブラリ・リファレンス

1.4.33 longshort: 整数オブジェクトの変換

long および shortINTEGER*4INTEGER*2 間で整数オブジェクトの変換を行います。この変換は、サブプログラム呼び出しリストでは特に有効です。

1.4.33.1 long: 短整数 (INTEGER*2) から長整数 (INTEGER*4) への変換

関数は、次のように呼び出します。

call 長整数をとるサブルーチン( long(int2) )

int2

INTEGER*2

入力 

戻り値 

INTEGER*4

出力 

1.4.33.2 short: 長整数から短整数への変換

関数は、次のように呼び出します。

INTEGER*2 short

call 短整数をとるサブルーチン( short(int4) )

int4

INTEGER*4

入力 

戻り値 

INTEGER*2

出力 

例 (該当部分のみ): long()short()


       integer*4 int4/8/, long
       integer*2 int2/8/, short
       call ExpecLong( long(int2) )
       call ExpecShort( short(int4) )
       …
       end

ExpecLong はユーザープログラムによって呼び出されるサブルーチンで、長整数 (INTEGER*4) の引数をとります。ExpecShort は短整数 (INTEGER*2) の引数をとります。

long はライブラリルーチンの呼び出しに定数が使用され、-i2 オプションを指定してコードをコンパイルする場合に役立ちます。

short は、長い型のオブジェクトを短い型の整数として渡す必要がある場合に役立ちます。短い型に渡す整数が大きすぎた場合、エラーは発生しませんが、プログラムが予期しない動きをします。