BEZEICHNUNG
isalnum, isalpha, isascii, isblank, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit, isalnum_l, isalpha_l, isascii_l, isblank_l, iscntrl_l, isdigit_l, isgraph_l, islower_l, isprint_l, ispunct_l, isspace_l, isupper_l, isxdigit_l - Zeichenklassifizierungs-Funktionen
ÜBERSICHT
#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);
Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
isascii():
_XOPEN_SOURCE
|| /* Glibc seit 2.19: */ _DEFAULT_SOURCE
|| /* Glibc-Versionen <= 2.19: */ _SVID_SOURCE
isblank():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l():
Seit Glibc 2.10:
_XOPEN_SOURCE >= 700
Vor Glibc 2.10:
_GNU_SOURCE
isascii_l():
Seit Glibc 2.10:
_XOPEN_SOURCE >= 700 && (_SVID_SOURCE || _BSD_SOURCE)
Vor Glibc 2.10:
_GNU_SOURCE
BESCHREIBUNG
Diese Funktionen prüfen, ob c, das den Wert eines unsigned char haben oder EOF sein muss, in eine Zeichenklasse entsprechend den aktuellen Einstellungen für die Spracheinstellung (locale) passt. Die Funktionen ohne das Suffix »_l« führen die Überprüfung basierend auf der aktuellen Locale aus.
Die Funktionen mit dem Suffix »_l« führen die Überprüfung basierend auf der im Locale-Objekt locale angegebenen Locale aus. Das Verhalten dieser Funktionen ist nicht definiert, falls locale das spezielle Locale-Objekt LC_GLOBAL_LOCALE (siehe duplocale(3)) oder kein gültiges Locale-Objekt-Handle ist.
die folgende
Liste erläutert die Wirkungsweise der Funktionen ohne
das Suffix »_l«. Das Verhalten der Funktionen
mit dem Suffix »_l« unterscheidet sich davon nur
dadurch, dass das Locale-Objekt locale anstelle der
aktuellen Locale verwendet wird.
isalnum()
prüft auf alphanumerische Zeichen, es ist äquivalent zu (isalpha(c) || isdigit(c)).
isalpha()
prüft auf alphanumerische Zeichen, in der standard "C"-Locale ist es äquivalent zu (isupper(c) || islower(c)). In anderen Locales kann es weitere Zeichen geben, für die isalpha() wahr ist - Zeichen, die weder Groß- noch Kleinbuchstaben sind.
isascii()
prüft, ob c ein 7-bit unsigned char-Wert ist, der in den ASCII-Zeichensatz passt.
isblank()
prüft auf ein Leerzeichen, also ein Leerzeichen oder einen Tabulator
iscntrl()
prüft auf ein Steuerzeichen
isdigit()
prüft auf eine Ziffer (0 bis 9)
isgraph()
prüft auf druckbare Zeichen außer Leerzeichen
islower()
prüft auf einen Kleinbuchstaben
isprint()
prüft auf druckbare Zeichen inklusive Leerzeichen
ispunct()
prüft auf druckbare Zeichen, das kein Leerzeichen und kein alphanumerisches Zeichen ist
isspace()
prüft auf Freizeichen. In den "C"- und "POSIX"-Locales sind dies: Leerzeichen, Seitenvorschub ('\f'), Zeilenumbruch ('\n'), Wagenrücklauf ('\r'), horizontaler Tabulator ('\t') und vertikaler Tabulator ('\v').
isupper()
prüft auf einen Großbuchstaben
isxdigit()
prüft, auf hexadezimale
Ziffern, also eine von
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F.
RÜCKGABEWERT
Falls das Zeichen c in die geprüfte Klasse fällt, wird eine Zahl ungleich null zurückgegeben, ansonsten null.
VERSIONEN
isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l() und isascii_l() sind seit Glibc 2.3 verfügbar.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
KONFORM ZU
C89 spezifiziert isalnum(), isalpha(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper() und isxdigit(), aber nicht isascii() und isblank(). POSIX.1-2001 spezifiziert auch diese Funktionen und auch isascii() (als eine XSI-Erweiterung) und isblank(). C99 spezifiziert alle der vorhergehenden Funktionen außer isascii().
POSIX.1-2008 markiert isascii() als veraltet, daher sollte darauf hingewiesen werden, dass es in einer lokalisierten Anwendung nicht portabel verwendet werden kann.
POSIX.1-2008 spezifiziert isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l() und isxdigit_l().
isascii_l() ist eine GNU-Erweiterung.
ANMERKUNGEN
Die Standards verlangen, dass das Argument c für diese Funktionen entwender EOF oder ein Wert, der in dem Typ unsigned char darstellbar ist, sein muss. Falls das Argument c vom Typ char ist, muss es in unsigned char umgewandelt werden, wie in dem folgenden Beispiel:
char c; ... res = toupper((unsigned char) c);
Dies ist notwendig, da char äquivalent zu signed char sein kann. In diesem Fall würde ein Byte, bei dem das höchste Bit gesetzt ist, mit einem Vorzeichen erweitert, wenn es in ein int konvertiert würde. Dies würde zu einem Wert führen, der außerhalb des Bereichs von unsigned char wäre.
Die Details, welche Zeichen zu welcher Klasse gehören, sind von der Locale abhängig. Zum Beispiel wird isupper() in der Standard-C-Locale kein Ä als Großbuchstaben erkennen.
SIEHE AUCH
iswalnum(3), iswalpha(3), iswblank(3), iswcntrl(3), iswdigit(3), iswgraph(3), iswlower(3), iswprint(3), iswpunct(3), iswspace(3), iswupper(3), iswxdigit(3), newlocale(3), setlocale(3), toascii(3), tolower(3), toupper(3), uselocale(3), ascii(7), locale(7)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.07 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian [AT] helgefjell.de>, Mario Blättermann <mario.blaettermann [AT] gmail.com> und Dr. Tobias Quathamer <toddy [AT] debian.org> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.