isalnum(3) islower,

SKŁADNIA

#include <ctype.h>


int isalnum(int c);
int isalpha(int c);
int iscntrl(int c);
int isdigit(int c);
int isgraph(int c);
int islower(int c);
int isprint(int c);
int ispunct(int c);
int isspace(int c);
int isupper(int c);
int isxdigit(int c);
int isascii(int c);
int isblank(int c);
int isalnum_l(int c, locale_t locale);
int isalpha_l(int c, locale_t locale);
int isblank_l(int c, locale_t locale);
int iscntrl_l(int c, locale_t locale);
int isdigit_l(int c, locale_t locale);
int isgraph_l(int c, locale_t locale);
int islower_l(int c, locale_t locale);
int isprint_l(int c, locale_t locale);
int ispunct_l(int c, locale_t locale);
int isspace_l(int c, locale_t locale);
int isupper_l(int c, locale_t locale);
int isxdigit_l(int c, locale_t locale);
int isascii_l(int c, locale_t locale);

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

isascii():

_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE

isblank():

_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
lub cc -std=c99

isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l():

Od glibc 2.10:
_XOPEN_SOURCE >= 700
Przed glibc 2.10:
_GNU_SOURCE

isascii_l():

Od glibc 2.10:
_XOPEN_SOURCE >= 700 && (_SVID_SOURCE || _BSD_SOURCE)
Przed glibc 2.10:
_GNU_SOURCE

OPIS

Funkcje te sprawdzają, czy c, które jest zmienną typu unsigned char lub wartością EOF, należy do pewnej klasy znaków określonej przez określone ustawienia regionalne (locale). Funkcje bez przyrostka "_l" przeprowadzają sprawdzenie w oparciu o bieżące locale.

Funkcje z przyrostkiem "_l" przeprowadzają sprawdzenie w oparciu o ustawienia regionalne określone przez obiekt locale locale. Ich zachowanie jest niezdefiniowane, jeśli locale nie jest specjalnym obiektem locale LC_GLOBAL_LOCALE (zob. duplocale(3)) albo nie jest prawidłowym uchwytem obiektu locale.

Poniższa lista wyjaśnia działanie funkcji bez przyrostka "_l". Funkcje z przyrostkiem "_l" różnią się wyłącznie tym, że używają obiekt locale locale, zamiast ustawień bieżących.

isalnum()
sprawdza, czy znak jest alfanumeryczny; jest to równoważne (isalpha(c) || isdigit(c)).
isalpha()
sprawdza, czy znak jest alfabetyczny; w standardowych ustawieniach regionalnych "C" jest to równoważne (isupper(c) || islower(c)). W niektórych ustawieniach językowych do klasy tej mogą należeć dodatkowe znaki, dla których isalpha() jest prawdziwe --- litery, które nie są ani wielkie, ani małe.
isascii()
sprawdza, czy c jest 7-bitową zmienną unsigned char, która należy do zbioru znaków ASCII.
isblank()
sprawdza, czy znak jest pusty, czyli czy jest to spacja lub tabulacja.
iscntrl()
sprawdza, czy znak jest znakiem sterującym.
isdigit()
sprawdza, czy jest to cyfra (0 do 9).
isgraph()
sprawdza, czy jest to jakikolwiek znak drukowalny oprócz spacji.
islower()
sprawdza, czy znak jest małą literą.
isprint()
sprawdza, czy znak jest drukowalny (łącznie ze spacją).
ispunct()
sprawdza, czy znak jest drukowalny i nie jest spacją lub znakiem alfanumerycznym.
isspace()
sprawdza, czy znak jest białym znakiem. W ustawieniach regionalnych "C" i "POSIX" są to: spacja, nowa strona (form-feed, "\f"), nowa linia, ("\n")), powrót karetki ("\r"), tabulacja pozioma ("\t") i tabulacja pionowa ("\v").
isupper()
sprawdza, czy znak jest wielką literą.
isxdigit()
sprawdza, czy znak jest cyfrą szesnastkową, czyli czy jest jednym z
0 1 2 3 4 5 6 7 8 9 0 a b c d e f A B C D E F.

WARTOŚĆ ZWRACANA

Zwracana jest wartość niezerowa, jeśli znak c należy do sprawdzanej klasy, a zero jeśli nie należy.

ATRYBUTY

Wielowątkowość (patrz pthreads(7))

Fuckcje The isalnum(), isalpha(), isascii(), isblank(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), and isxdigit() są wątkowo bezpieczne.

WERSJE

Fuckcje isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l(), and isascii_l() są dostępne od glibc 2.3.

ZGODNE Z

C89 określa isalnum(), isalpha(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper() i isxdigit(), lecz nie określa isascii() i isblank(). POSIX.1-2001 również opisuje te funkcje, łącznie z isascii() (jako rozszerzenie XSI) oraz isblank(). C99 określa wszystkie te funkcje z wyjątkiem isascii().

POSIX.1-2008 oznacza toascii() jako przestarzałą, zauważając, że nie może być używana w sposób przenośny w aplikacji obsługującej ustawienia regionalne.

POSIX.1-2008 opisuje isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l() oraz isxdigit_l().

isascii_l() jest rozszerzeniem GNU.

UWAGI

Szczegóły tego, które znaki należą do której klasy, zależą od ustawień regionalnych (locale). Np. isupper() nie rozpozna A-umlaut (Ä) jako wielkiej litery w domyślnym ustawieniu regionalnym "C".

O STRONIE

Angielska wersja tej strony pochodzi z wydania 3.71 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów, oraz najnowszą wersję oryginału można znaleźć pod adresem http://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Przemek Borys (PTM) <[email protected]>, Andrzej Krzysztofowicz (PTM) <[email protected]>, Robert Luberda <[email protected]> i Michał Kułach <[email protected]>.

Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 3.71 oryginału.