式および割り当ての概要

式は、データの参照または計算のことで、オペランド、演算子、 括弧から構成されます。 式を評価すると、型、形状、および場合によっては型付きパラメーターを 持った値が生成されます。

オペランド は、スカラーまたは配列のいずれかです。 演算子 は、組み込みまたは定義済みのいずれかです。 単項演算の形式は次のとおりです。

演算子 オペランド

2 進演算の形式は次のとおりです。

オペランド 1 演算子 オペランド 2

2 つのオペランドの形状は整合性がとられます。 一方のオペランドが配列で、もう一方がスカラーである場合、そのスカラーは、 その配列オペランドと同じ形状を持つ配列として扱われ、 この配列のすべてのエレメントがスカラーの値を持つことになります。

括弧内の式はどれもデータ・エンティティーとして扱われます。 括弧を使用して式の明示的解釈を指定することもできます。 さらに、括弧を使用して式の代替形式を制限することもできます。 これにより、式の計算時に中間値の大きさと精度を制御できます。 例として、次に 2 つの式を示します。

    (I*J)/K
    I*(J/K)

この 2 つの式は、数学的には等しいものですが、計算の結果として異なる計算値が出ることもあります。

1 次子

1 次子 は、最も単純な形式の式です。 以下のいずれかになります。

データ・オブジェクトである 1 次子は、想定サイズ配列ではありません。

1 次子の例

12.3             ! Constant
'ABCDEFG'(2:3)   ! Subobject of a constant
VAR              ! Variable name
(/7.0,8.0/)      ! Array constructor
EMP(6,'SMITH')   ! Structure constructor
SIN(X)           ! Function reference
(T-1)            ! Expression in parentheses

型、パラメーター、および形状

1 次子の型、型付きパラメーター、および形状は、次のように決定されます。

ポインターがポインター以外の仮引き数に関連した演算 に 1 次子として入れられる場合、ターゲットが参照されます。 1 次子の型、パラメーター、 および形状は、ターゲットの型、パラメーターおよび形状です。 ポインターがターゲットと関連していない場合、その ポインターは、対応する仮引き数がポインターである プロシージャー参照内の実引き数、またはポインター割り当てステートメント内の ターゲットとしてのみ指定されます。 関連解除されたポインターを ASSOCIATED 組み込み照会関数の実引き数として使用することもできます。

演算 [expr1] op expr2 の場合、op が 単項式であるか、あるいは expr1 がスカラーで あると、その演算の形状は expr2 の形状となります。 そうでない場合、その形状は expr1 の形状となります。

式の型および形状は、演算子および式の 1 次子の型と形状によって決まります。 式の型は、組み込み型または派生型です。 組み込み型の式は、kind パラメーターを持ち、 これが文字型の場合には、length パラメーターも持ちます。 IBM Copyright 2003