Spec-Zone.ru › C

abs, labs, llabs, imaxabs

Определено в заголовке <stdlib.h>
int        abs( int n );
long       labs( long n );
long long llabs( long long n );
(с C99)
Определено в заголовке <inttypes.h>
intmax_t imaxabs( intmax_t n );
(с C99)

Вычисляет абсолютное значение целого числа. Поведение не определено, если результат не может быть представлен типом возвращаемого значения.

Параметры

n - целое значение

Возвращаемое значение

Абсолютное значение n (т.е. |n|), если оно представимо.

Примечания

В системах со дополнительным кодом, абсолютное значение наименьшего отрицательного значения находится вне диапазона, например, для 32-битного типа с дополнительным кодом int, INT_MIN равно -2147483648, но потенциальный результат 2147483648 больше, чем INT_MAX, что равно 2147483647.

Пример

#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
 
int main(void)
{
    printf("abs(+3) = %d\n", abs(+3));
    printf("abs(-3) = %d\n", abs(-3));
 
//  printf("%+d\n", abs(INT_MIN)); // undefined behavior on 2's complement systems
}

Вывод:

abs(+3) = 3
abs(-3) = 3

Справочные материалы

  • Стандарт C17 (ISO/IEC 9899:2018):
    • 7.8.2.1 Функция imaxabs (с. 159)
    • 7.22.6.1 Функции abs, labs и llabs (с. 259)
  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.8.2.1 Функция imaxabs (с. 218)
    • 7.22.6.1 Функции abs, labs и llabs (с. 356)
  • Стандарт C99 (ISO/IEC 9899:1999):
    • 7.8.2.1 Функция imaxabs (с. 199-200)
    • 7.20.6.1 Функции abs, labs и llabs (с. 320)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
    • 4.10.6.1 Функция abs
    • 4.10.6.3 Функция labs

См. также

fabsfabsffabsl
(C99)(C99)
вычисляет абсолютное значение значения с плавающей точкой (\(\small{|x|}\)|x|)
(функция)
cabscabsfcabsl
(C99)(C99)(C99)
вычисляет модуль комплексного числа
(функция)
Документация C++ для abs

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/numeric/math/abs

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API