C 参考手册

位置:首页 > C 参考手册 >数值 >复数算术 > cimagf, cimag, cimagl

定义于头文件 <complex.h>
float       cimagf( float complex z );
(1) (C99 起)
double      cimag( double complex z );
(2) (C99 起)
long double cimagl( long double complex z );
(3) (C99 起)
定义于头文件 <tgmath.h>
#define cimag( z )
(4) (C99 起)
1-3) 返回 z 的虚部。
4) 泛型宏:若 z 拥有 long double complexlong double imaginarylong double 类型,则调用 cimagl 。若 z 拥有 float complexfloat imaginaryfloat 类型,则调用 cimagf 。若 z 拥有 double complexdouble imaginarydouble 或任何整数类型,则调用 cimag

参数

z - 复参数

返回值

z 的虚部。

此函数对所有可行输入完全指明,而且不受制于任何描述于 math_errhandling 的错误。

注意

对于任何复数变量 zz == creal(z) + I*cimag(z)

示例

#include <stdio.h>
#include <complex.h>
 
int main(void)
{    
    double complex z = 1.0 + 2.0*I;
    printf("%f%+fi\n", creal(z), cimag(z));
}

输出:

1.000000+2.000000i

引用

  • C11 standard (ISO/IEC 9899:2011):
  • 7.3.9.2 The cimag functions (p: 197)
  • 7.25 Type-generic math <tgmath.h> (p: 373-375)
  • G.7 Type-generic math <tgmath.h> (p: 545)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.3.9.2 The cimag functions (p: 178-179)
  • 7.22 Type-generic math <tgmath.h> (p: 335-337)
  • G.7 Type-generic math <tgmath.h> (p: 480)

参阅

(C99)(C99)(C99)
计算复数的实部
(函数)