1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
|
'\" t
.\" Copyright, the authors of the Linux man-pages project
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.TH abs 3 2025-05-17 "Linux man-pages (unreleased)"
.SH NAME
abs, labs, llabs, imaxabs,
uabs, ulabs, ullabs, uimaxabs
\-
compute the absolute value of an integer
.SH LIBRARY
Standard C library
.RI ( libc ,\~ \-lc )
.SH SYNOPSIS
.nf
.B #include <stdlib.h>
.P
.BI "int abs(int " j );
.BI "long labs(long " j );
.BI "long long llabs(long long " j );
.P
.BI "unsigned int uabs(int " j );
.BI "unsigned long ulabs(long " j );
.BI "unsigned long long ullabs(long long " j );
.P
.B #include <inttypes.h>
.P
.BI "intmax_t imaxabs(intmax_t " j );
.BI "uintmax_t uimaxabs(intmax_t " j );
.fi
.P
.RS -4
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.RE
.P
.BR llabs ():
.nf
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
.fi
.P
.BR uabs (),
.BR ulabs (),
.BR ullabs (),
.BR uimaxabs ():
.nf
_ISOC2Y_SOURCE
.fi
.SH DESCRIPTION
These functions
compute the absolute value of the argument
.I j
of the
appropriate integer type for the function.
.SH RETURN VALUE
Returns the absolute value of the integer argument,
of the appropriate integer type for the function.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lbx lb lb
l l l.
Interface Attribute Value
T{
.na
.nh
.BR abs (),
.BR labs (),
.BR llabs (),
.BR imaxabs (),
.BR uabs (),
.BR ulabs (),
.BR \%ullabs (),
.BR \%uimaxabs ()
T} Thread safety MT-Safe
.TE
.SH STANDARDS
.TP
.BR abs ()
.TQ
.BR labs ()
.TQ
.BR llabs ()
.TQ
.BR imaxabs ()
C23, POSIX.1-2024
.SH HISTORY
.TP
.BR abs ()
C89, POSIX.1-1996, SVr4, 4.3BSD.
.TP
.BR labs ()
C89, POSIX.1-2001.
.TP
.BR llabs ()
C99, POSIX.1-2001;
glibc 2.0.
.TP
.BR imaxabs ()
C99, POSIX.1-2001;
glibc 2.1.1.
.TP
.BR uabs ()
.TQ
.BR ulabs ()
.TQ
.BR \%ullabs ()
.TQ
.BR \%uimaxabs ()
C2y;
glibc 2.42.
.SH BUGS
For
.BR abs (),
.BR labs (),
.BR llabs (),
and
.BR imaxabs (),
trying to take the absolute value of the most negative integer
is not defined.
.SH SEE ALSO
.BR cabs (3),
.BR ceil (3),
.BR fabs (3),
.BR floor (3),
.BR rint (3)
|