abs, labs, llabs, imaxabs
来自 cppreference.cn
在头文件 <stdlib.h> 中定义 |
||
int abs( int n ); |
||
long labs( long n ); |
||
long long llabs( long long n ); |
(C99 起) | |
在头文件 <inttypes.h> 中定义 |
||
(C99 起) | ||
计算整数的绝对值。如果结果无法用返回类型表示,则行为未定义。
目录 |
[编辑] 参数
n | - | 整数值 |
[编辑] 返回值
如果可表示,则为 n 的绝对值(即 |n|
)。
[编辑] 注意
在 2 的补码系统中,最负值的绝对值超出范围,例如对于 32 位 2 的补码类型 int,INT_MIN 是 -2147483648,但本应得到的结果 2147483648 大于 INT_MAX,后者是 2147483647。
[编辑] 示例
运行此代码
输出
abs(+3) = 3 abs(-3) = 3
[编辑] 参考
- C23 标准 (ISO/IEC 9899:2024)
- 7.8.2.1 imaxabs 函数 (p: TBD)
- 7.22.6.1 abs, labs 和 llabs 函数 (p: TBD)
- C17 标准 (ISO/IEC 9899:2018)
- 7.8.2.1 imaxabs 函数 (p: 159)
- 7.22.6.1 abs, labs 和 llabs 函数 (p: 259)
- C11 标准 (ISO/IEC 9899:2011)
- 7.8.2.1 imaxabs 函数 (p: 218)
- 7.22.6.1 abs, labs 和 llabs 函数 (p: 356)
- C99 标准 (ISO/IEC 9899:1999)
- 7.8.2.1 imaxabs 函数 (p: 199-200)
- 7.20.6.1 abs, labs 和 llabs 函数 (p: 320)
- C89/C90 标准 (ISO/IEC 9899:1990)
- 4.10.6.1 abs 函数
- 4.10.6.3 labs 函数
[编辑] 另请参阅
(C99)(C99) |
计算浮点值的绝对值 (|x|) (函数) |
(C99)(C99)(C99) |
计算复数的模 (函数) |
C++ 文档 用于 abs
|