# std::abs(std::complex)

< cpp‎ | numeric‎ | complex

定义于头文件 `<complex>` |  |
template< class T > T abs( const complex<T>& z ); |  |

返回复数 `z` 的绝对值。

### 参数

z | - | 复数值

### 返回值

若不出现错误，则返回 `z` 的绝对值（又称为范数、模或幅度）。

错误和特殊情形按照此函数实现成 std::hypot(std::real(z), std::imag(z)) 一般处理

### 示例

    #include <iostream>
    #include <complex>

    int main()
    {
        std::complex<double> z(1, 1);
        std::cout << z << " cartesian is rho = " << std::abs(z)
                  << " theta = " << std::arg(z) << " polar\n";
    }

输出：

    (1,1) cartesian is rho = 1.41421 theta = 0.785398 polar

### 参阅

arg | 返回辐角 (函数模板)
polar | 从模和辐角构造复数 (函数模板)
abs(int)labs llabs (C++11) | 计算整数值的绝对值（ \(\small{|x|}\)|x| ） (函数)
abs(float)fabs fabsf fabsl (C++11)(C++11) | 浮点值的绝对值（ \(\small{|x|}\)|x| ） (函数)
hypot hypotf hypotl (C++11)(C++11)(C++11) | 计算两个给定数的平方和的平方根（ \(\scriptsize{\sqrt{x^2+y^2} }\)√x2 +y2 ） (函数)
abs(std::valarray) | 应用函数 std::abs 到 valarray 的每个元素 (函数模板)