complex.h

(重定向自Ccomplex

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

类型

C99C++11都规定了关键字_Complex。因而有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宏来表示相应复数表达式。

函数

  • 複三角函数
    • 反余弦
    • 反正弦
      • 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节