Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Collapse the table of content
Expand the table of content


Calculates the absolute value of a complex number.

double _cabs( 
   struct _complex z 


Complex number.

Return Value

_cabs returns the absolute value of its argument if successful. On overflow, _cabs returns HUGE_VAL and sets errno to ERANGE. You can change error handling with _matherr.


The _cabs function calculates the absolute value of a complex number, which must be a structure of type _complex. The structure z is composed of a real component x and an imaginary component y. A call to _cabs produces a value equivalent to that of the expression sqrt( z.x*z.x + z.y*z.y ).


Routine Required header Compatibility
_cabs <math.h> Win 98, Win Me, Win NT, Win 2000, Win XP

For additional compatibility information, see Compatibility in the Introduction.


All versions of the C run-time libraries.


// crt_cabs.c
/* Using _cabs, this program calculates
 * the absolute value of a complex number.
#include <math.h>
#include <stdio.h>

int main( void )
   struct _complex number = { 3.0, 4.0 };
   double d;

   d = _cabs( number );
   printf( "The absolute value of %f + %fi is %f\n",
           number.x, number.y, d );


The absolute value of 3.000000 + 4.000000i is 5.000000

See Also

Floating-Point Support Routines | abs | fabs | labs | Run-Time Routines and .NET Framework Equivalents

© 2015 Microsoft