物理表現は SOURCE と同一で、MOLD のタイプおよび型付きパラメーターで解釈された結果を戻します。
符号拡張、丸め、ブランクの埋め込み、および、他の変換方法を使用して発生させることができるその他の変更を行わずに、タイプ間で低レベルの変換を実行します。
引き数タイプおよび属性
クラス
変換関数
結果タイプおよび属性
MOLD と同じタイプおよび型付きパラメーター
MOLD がスカラーで、SIZE を指定しないと、結果はスカラーになります。
MOLD が配列値で、SIZE を指定しないと、結果はランク 1 の配列値になり、SOURCE を保持できるだけの物理的に十分な最小のサイズを持ちます。
SIZE を指定した場合には、結果はランク 1 で、サイズが SIZE の配列値になります。
結果値
結果の物理表現は SOURCE と同じで、結果が小さい場合は切り捨てられ、結果が大きい場合は不定の後続部分を持ちます。
物理表現は変更されないので、結果が切り捨てられない限り、TRANSFER の結果を元に戻すことができます。
REAL(4) X = 3.141
DOUBLE PRECISION I, J(6) = (/1,2,3,4,5,6/)
! Because x is transferred to a larger representation
! and then back, its value is unchanged.
X = TRANSFER( TRANSFER( X, I ), X )
! j is transferred into a real(4) array large enough to
! hold all its elements, then back into an array of
! its original size, so its value is unchanged too.
J = TRANSFER( TRANSFER( J, X ), J, SIZE=SIZE(J) )
例
TRANSFER (1082130432, 0.0) は 4.0 です。
TRANSFER ((/1.1,2.2,3.3/), (/(0.0,0.0)/)) は長さ 2 を持つ複素数のランク 1 配列で、最初のエレメントは値 (1.1, 2.2) を持ち、2 番目のエレメントは値 3.3 を持つ実数部を持ちます。2 番目のエレメントの虚数部は不定です。
TRANSFER ((/1.1,2.2,3.3/), (/(0.0,0.0)/), 1) は、値 (/(1.1,2.2)/) を持ちます。