Complex.h

complex.h是C標準函数庫中的头文件，提供了复数算术所需要的宏定义与函数声明。

类型
C99及C++11都规定了关键字</code>_Complex</code>。因而有3种复数类型：
double _Complex
float _Complex
long double _Complex
次序不是必须遵守的，比如float _Complex也可以写成_Complex float。

_Complex_I扩展为类型为const float _Complex的常量值，其值为虚数单位。 

C99规定complex作为宏扩展为_Complex。但C++未定义complex宏。

gcc仅支持complex type，不支持imaginary type。因此宏I扩展为_Complex_I。

定义复数变量时，可以如此：
double _Complex v1=3.1+5*I;
double _Complex v2=3.2+5*_Complex_I;
float _Complex v3=4.6f+12.0IF;  //必须先写i，后写f
_Complex float v4=8.2f+2.3if;
long double _Complex v5=1.23456789L+3.456789999iL; //必须先写i，后写L
也可以用CMPLX/CMPLXF/CMPLXL宏来表示相应复数表达式。

函数
複三角函数
反余弦
cacos	双精度版本
cacosf	单精度版本
cacosl	长双精度版本
反正弦
casin	双精度版本
casinf	单精度版本
casinl	长双精度版本
反正切
catan	双精度版本
catanf	单精度版本
catanl	长双精度版本
余弦
ccos		双精度版本
ccosf	单精度版本
ccosl	长双精度版本
正弦
csin		双精度版本
csinf	单精度版本
csinl	长双精度版本
正切
ctan		双精度版本
ctanf	单精度版本
ctanl	长双精度版本
复双曲函数
反双曲余弦
cacosh	双精度版本
cacoshf	单精度版本
cacoshl	长双精度版本
反双曲正弦
casinh	双精度版本
casinhf	单精度版本
casinhl	长双精度版本
反双曲正切
catanh	双精度版本
catanhf	单精度版本
catanhl	长双精度版本
双曲余弦
ccosh	双精度版本
ccoshf	单精度版本
ccoshl	长双精度版本
双曲正弦
csinh	双精度版本
csinhf	单精度版本
csinhl	长双精度版本
双曲正切
ctanh	双精度版本
ctanhf	单精度版本
ctanhl	长双精度版本
指数与对数函数
指数
cexp		双精度版本
cexpf	单精度版本
cexpl	长双精度版本
自然对数
clog		双精度版本
clogf	单精度版本
clogl	长双精度版本
幂运算和绝对值
绝对值
cabs		双精度版本
cabsf	单精度版本
cabsl	长双精度版本
幂运算
cpow		双精度版本
cpowf	单精度版本
cpowl	长双精度版本
平方根
csqrt	双精度版本
csqrtf	单精度版本
csqrtl	长双精度版本
操作
相角
carg		双精度版本
cargf	单精度版本
cargl	长双精度版本
虚部
cimag	双精度版本
cimagf	单精度版本
cimagl	长双精度版本
复共轭
cong		双精度版本
congf	单精度版本
congl	长双精度版本
黎曼球面投影
cproj	双精度版本
cprojf	单精度版本
cprojl	长双精度版本
实部
creal	双精度版本
crealf	单精度版本
creall	长双精度版本

参考文献

C11 n1570 标准 7.3节
V