Scroll to navigation

div(3) Library Functions Manual div(3)

NAZWA

div, ldiv, lldiv, imaxdiv - oblicza iloraz oraz resztę dzielenia liczb całkowitych

BIBLIOTEKA

Standardowa biblioteka C (libc, -lc)

SKŁADNIA

#include <stdlib.h>
div_t div(int numerator, int denominator);
ldiv_t ldiv(long numerator, long denominator);
lldiv_t lldiv(long long numerator, long long denominator);
#include <inttypes.h>
imaxdiv_t imaxdiv(intmax_t numerator, intmax_t denominator);

Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

lldiv():


_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

OPIS

Funkcja div() oblicza wartość numerator/denominator, a następnie zwraca iloraz i resztę w strukturze div_t, która zawiera dwa elementy całkowite (w nieokreślonym porządku) nazwane quot i rem. Iloraz jest zaokrąglany w kierunku zera. Wynik spełnia następującą równość: quot*denominator+rem = numerator.

Funkcje ldiv(), lldiv() i imaxdiv() robią to samo, dzieląc liczby wskazanych typów i zwracając wynik w strukturze o wskazanej nazwie. We wszystkich przypadkach pola quot i rem są takiego samego typu, jak argumenty funkcji.

WARTOŚĆ ZWRACANA

Struktura div_t (itp.).

ATRYBUTY

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

Interfejs Atrybut Wartość
div(), ldiv(), lldiv(), imaxdiv() Bezpieczeństwo wątkowe MT-bezpieczne

STANDARDY

POSIX.1-2001, POSIX.1-2008, C99, SVr4, 4.3BSD. Funkcje lldiv() i imaxdiv() zostały dodane w C99.

PRZYKŁADY

Po


div_t q = div(-5, 3);

wartości q.quot oraz q.rem wynoszą odpowiednio -1 i -2.

ZOBACZ TAKŻE

abs(3), remainder(3)

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Adam Byrtek <alpha@irc.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

29 grudnia 2022 r. Linux man-pages 6.03