複素数リテラル

複素数リテラル型は、複素数を表します。事前定義マクロ _Complex_I は、虚数単位の値を使用して、型 const float _Complex の定数式を表します。例えば、次のようにします。

float _Complex varComplex = 2.0f + 2.0f*_Complex_I;

は、 型 float _Complex に対する変数 varComplex を初期化します。

複素数型は、サフィックス iIj、または J のいずれかで示すこと もできます。複素数の実数部は、サフィックス fFl、または L の 1 つで示すことができます。 これらのサフィックスは、GNU C で開発されたアプリケーションを移植しやすくするための C99 の拡張機能です。

複素数リテラルを単純化した構文を次に示します。

>>-| floating-constant |--| complex-suffix |-------------------><
 
floating-constant:
 
|--+-decimal-floating-constant-----+----------------------------|
   '-hexadecimal-floating-constant-'
 
complex-suffix:
 
|--+-+-----------------+--suffixij-+----------------------------|
   | '-floating-suffix-'           |
   '-suffixij--+-----------------+-'
               '-floating-suffix-'
 
 

ここで、

floating-suffix
fFl (小文字の L) または L の 1 つ。

サフィックス f または F は、 型 float _Complex の複素数リテラルを示します。サフィックス l または L は、型 long double _Complex の複素数リテラルを示します。 複素数リテラルは、サフィックスがない型 double _Complex です。

suffixij
iIjJ の 1 つ。

関連参照

IBM Copyright 2003