CMPLXF, CMPLX, CMPLXL
From cppreference.net
|
ヘッダーで定義
<complex.h>
|
||
|
float
complex
CMPLXF
(
float
real,
float
imag
)
;
|
(C11以降) | |
|
double
complex
CMPLX
(
double
real,
double
imag
)
;
|
(C11以降) | |
|
long
double
complex
CMPLXL
(
long
double
real,
long
double
imag
)
;
|
(C11以降) | |
これらの各マクロは、指定された複素数型の値に評価される式に展開されます。実数部は
real
(指定された引数型に変換された値)を持ち、虚数部は
imag
(指定された引数型に変換された値)を持ちます。
これらの式は、
real
および
imag
の式も同様に適切である限り、静的記憶域期間またはスレッド記憶域期間を持つオブジェクトの初期化子として使用するのに適しています。
目次 |
パラメータ
| real | - | 返される複素数の実部 |
| imag | - | 返される複素数の虚部 |
戻り値
実数部と虚数部から構成される複素数。
real
と
imag
をそれぞれ実部と虚部として持つ。
注記
これらのマクロは、仮に虚数型がサポートされているかのように実装されています(たとえそれらがサポートされておらず、 _Imaginary_I が実際には未定義であっても)。また、以下のように定義されているかのように動作します:
#define CMPLX(x, y) ((double complex)((double)(x) + _Imaginary_I * (double)(y))) #define CMPLXF(x, y) ((float complex)((float)(x) + _Imaginary_I * (float)(y))) #define CMPLXL(x, y) ((long double complex)((long double)(x) + \ _Imaginary_I * (long double)(y)))
例
このコードを実行
出力:
z = 0.0-0.0i
参考文献
- C11規格 (ISO/IEC 9899:2011):
-
- 7.3.9.3 CMPLXマクロ (p: 197)
関連項目
|
(C99)
|
虚数単位定数 i
(マクロ定数) |
|
C++ documentation
for
complex
|
|