インテル® Fortran コンパイラー XE 13.1 ユーザー・リファレンス・ガイド

文字データ型の戻り

Fortran プログラムで関数から CHARACTER 型のデータが返される場合、Fortran コンパイラーは呼び出されたプロシージャーの引数リストの先頭に 2 つの引数を追加します。

呼び出されたルーチンは、最初の引数で指定されているアドレスに結果をコピーしなければなりません。次に、MAKECHARS という名前の文字関数を返すための Fortran コードとそれに対応する C ルーチンの例を示します。

C から Fortran への文字型の戻り例

Fortran のコード

interface
   function makechars(x,y)
   !DEC$ATTRIBUTES decorate, alias:'makechars'::makechars
   character*10 makechars
   double precision x,y
   end function
end interface

character *10 chars
double precision x,y
chars=makechars(x,y) 

対応する C ルーチン

void makechars (char *result, size_t length, double *x, double *y)
{
...program text, producing returnvalue...
for (i = 0; i < length; i++ ) {
result[i] = returnvalue[i];
}
}

上記の例では、次の制限および動作が適用されます。


このヘルプトピックについてのフィードバックを送信