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.