.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de) .\" .\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" .\" Modified Sat Jul 24 19:10:00 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified Sun Aug 21 17:51:50 1994 by Rik Faith (faith@cs.unc.edu) .\" Modified Sat Sep 2 21:52:01 1995 by Jim Van Zandt .\" Modified Mon May 27 22:55:26 1996 by Martin Schulze (joey@linux.de) .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH ISALPHA 3 "15. September 2017" GNU Linux\-Programmierhandbuch .SH 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 .SH ÜBERSICHT .nf \fB#include \fP .PP \fBint isalnum(int \fP\fIc\fP\fB);\fP \fBint isalpha(int \fP\fIc\fP\fB);\fP \fBint iscntrl(int \fP\fIc\fP\fB);\fP \fBint isdigit(int \fP\fIc\fP\fB);\fP \fBint isgraph(int \fP\fIc\fP\fB);\fP \fBint islower(int \fP\fIc\fP\fB);\fP \fBint isprint(int \fP\fIc\fP\fB);\fP \fBint ispunct(int \fP\fIc\fP\fB);\fP \fBint isspace(int \fP\fIc\fP\fB);\fP \fBint isupper(int \fP\fIc\fP\fB);\fP \fBint isxdigit(int \fP\fIc\fP\fB);\fP .PP \fBint isascii(int \fP\fIc\fP\fB);\fP \fBint isblank(int \fP\fIc\fP\fB);\fP .PP \fBint isalnum_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isalpha_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isblank_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint iscntrl_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isdigit_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isgraph_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint islower_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isprint_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint ispunct_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isspace_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isupper_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP \fBint isxdigit_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP .PP \fBint isascii_l(int \fP\fIc\fP\fB, locale_t \fP\fIlocale\fP\fB);\fP .fi .PP .in -4n Mit Glibc erforderliche Makros (siehe \fBfeature_test_macros\fP(7)): .in .PP .ad l \fBisascii\fP(): .RS 4 _XOPEN_SOURCE || /* Glibc seit 2.19: */ _DEFAULT_SOURCE || /* Glibc\-Versionen <= 2.19: */ _SVID_SOURCE .RE .PP \fBisblank\fP(): .RS 4 _ISOC99_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L .RE .PP \fBisalnum_l\fP(), \fBisalpha_l\fP(), \fBisblank_l\fP(), \fBiscntrl_l\fP(), \fBisdigit_l\fP(), \fBisgraph_l\fP(), \fBislower_l\fP(), \fBisprint_l\fP(), \fBispunct_l\fP(), \fBisspace_l\fP(), \fBisupper_l\fP(), \fBisxdigit_l\fP(): .PD 0 .RS 4 .TP Seit Glibc 2.10: _XOPEN_SOURCE\ >=\ 700 .TP Vor Glibc 2.10: _GNU_SOURCE .RE .PD .PP \fBisascii_l\fP(): .PD 0 .RS 4 .TP Seit Glibc 2.10: _XOPEN_SOURCE\ >=\ 700 && (_SVID_SOURCE || _BSD_SOURCE) .TP Vor Glibc 2.10: _GNU_SOURCE .RE .PD .ad .SH BESCHREIBUNG Diese Funktionen prüfen, ob \fIc\fP, das den Wert eines \fBunsigned char\fP haben oder \fBEOF\fP 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. .PP Die Funktionen mit dem Suffix »_l« führen die Überprüfung basierend auf der im Locale\-Objekt \fIlocale\fP angegebenen Locale aus. Das Verhalten dieser Funktionen ist nicht definiert, falls \fIlocale\fP das spezielle Locale\-Objekt \fBLC_GLOBAL_LOCALE\fP (siehe \fBduplocale\fP(3)) oder kein gültiges Locale\-Objekt\-Handle ist. .PP 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 \fIlocale\fP anstelle der aktuellen Locale verwendet wird. .TP \fBisalnum\fP() prüft auf alphanumerische Zeichen, es ist äquivalent zu \fB(isalpha(\fP\fIc\fP\fB) || isdigit(\fP\fIc\fP\fB))\fP. .TP \fBisalpha\fP() prüft auf alphanumerische Zeichen, in der standard \fB"C"\fP\-Locale ist es äquivalent zu \fB(isupper(\fP\fIc\fP\fB) || islower(\fP\fIc\fP\fB))\fP. In anderen Locales kann es weitere Zeichen geben, für die \fBisalpha()\fP wahr ist \- Zeichen, die weder Groß\- noch Kleinbuchstaben sind. .TP \fBisascii\fP() prüft, ob \fIc\fP ein 7\-bit \fIunsigned char\fP\-Wert ist, der in den ASCII\-Zeichensatz passt. .TP \fBisblank\fP() prüft auf ein Leerzeichen, also ein Leerzeichen oder einen Tabulator .TP \fBiscntrl\fP() prüft auf ein Steuerzeichen .TP \fBisdigit\fP() prüft auf eine Ziffer (0 bis 9) .TP \fBisgraph\fP() prüft auf druckbare Zeichen außer Leerzeichen .TP \fBislower\fP() prüft auf einen Kleinbuchstaben .TP \fBisprint\fP() prüft auf druckbare Zeichen inklusive Leerzeichen .TP \fBispunct\fP() prüft auf druckbare Zeichen, das kein Leerzeichen und kein alphanumerisches Zeichen ist .TP \fBisspace\fP() prüft auf Freizeichen. In den \fB"C"\fP\- und \fB"POSIX"\fP\-Locales sind dies: Leerzeichen, Seitenvorschub (\fB\(aq\ef\(aq\fP), Zeilenumbruch (\fB\(aq\en\(aq\fP), Wagenrücklauf (\fB\(aq\er\(aq\fP), horizontaler Tabulator (\fB\(aq\et\(aq\fP) und vertikaler Tabulator (\fB\(aq\ev\(aq\fP). .TP \fBisupper\fP() prüft auf einen Großbuchstaben .TP \fBisxdigit\fP() prüft, auf hexadezimale Ziffern, also eine von .br \fB0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F\fP. .SH RÜCKGABEWERT Falls das Zeichen \fIc\fP in die geprüfte Klasse fällt, wird eine Zahl ungleich null zurückgegeben, ansonsten null. .SH VERSIONEN \fBisalnum_l\fP(), \fBisalpha_l\fP(), \fBisblank_l\fP(), \fBiscntrl_l\fP(), \fBisdigit_l\fP(), \fBisgraph_l\fP(), \fBislower_l\fP(), \fBisprint_l\fP(), \fBispunct_l\fP(), \fBisspace_l\fP(), \fBisupper_l\fP(), \fBisxdigit_l\fP() und \fBisascii_l\fP() sind seit Glibc 2.3 verfügbar. .SH ATTRIBUTE Siehe \fBattributes\fP(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke. .ad l .TS allbox; lbw32 lb lb l l l. Schnittstelle Attribut Wert T{ \fBisalnum\fP(), \fBisalpha\fP(), \fBisascii\fP(), \fBisblank\fP(), \fBiscntrl\fP(), \fBisdigit\fP(), \fBisgraph\fP(), \fBislower\fP(), \fBisprint\fP(), \fBispunct\fP(), \fBisspace\fP(), \fBisupper\fP(), \fBisxdigit\fP() T} Multithread\-Fähigkeit MT\-Safe .TE .ad .\" FIXME: need a thread-safety statement about the *_l functions .SH "KONFORM ZU" C89 spezifiziert \fBisalnum\fP(), \fBisalpha\fP(), \fBiscntrl\fP(), \fBisdigit\fP(), \fBisgraph\fP(), \fBislower\fP(), \fBisprint\fP(), \fBispunct\fP(), \fBisspace\fP(), \fBisupper\fP() und \fBisxdigit\fP(), aber nicht \fBisascii\fP() und \fBisblank\fP(). POSIX.1\-2001 spezifiziert auch diese Funktionen und auch \fBisascii\fP() (als eine XSI\-Erweiterung) und \fBisblank\fP(). C99 spezifiziert alle der vorhergehenden Funktionen außer \fBisascii\fP(). .PP POSIX.1\-2008 markiert \fBisascii\fP() als veraltet, daher sollte darauf hingewiesen werden, dass es in einer lokalisierten Anwendung nicht portabel verwendet werden kann. .PP POSIX.1\-2008 spezifiziert \fBisalnum_l\fP(), \fBisalpha_l\fP(), \fBisblank_l\fP(), \fBiscntrl_l\fP(), \fBisdigit_l\fP(), \fBisgraph_l\fP(), \fBislower_l\fP(), \fBisprint_l\fP(), \fBispunct_l\fP(), \fBisspace_l\fP(), \fBisupper_l\fP() und \fBisxdigit_l\fP(). .PP \fBisascii_l\fP() ist eine GNU\-Erweiterung. .SH ANMERKUNGEN Die Standards verlangen, dass das Argument \fIc\fP für diese Funktionen entwender \fBEOF\fP oder ein Wert, der in dem Typ \fIunsigned char\fP darstellbar ist, sein muss. Falls das Argument \fIc\fP vom Typ \fIchar\fP ist, muss es in \fIunsigned char\fP umgewandelt werden, wie in dem folgenden Beispiel: .PP .in +4n .EX char c; \&... res = toupper((unsigned char) c); .EE .in .PP Dies ist notwendig, da \fIchar\fP äquivalent zu \fIsigned char\fP 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 \fIint\fP konvertiert würde. Dies würde zu einem Wert führen, der außerhalb des Bereichs von \fIunsigned char\fP wäre. .PP Die Details, welche Zeichen zu welcher Klasse gehören, sind von der Locale abhängig. Zum Beispiel wird \fBisupper()\fP in der Standard\-\fBC\fP\-Locale kein Ä als Großbuchstaben erkennen. .SH "SIEHE AUCH" \fBiswalnum\fP(3), \fBiswalpha\fP(3), \fBiswblank\fP(3), \fBiswcntrl\fP(3), \fBiswdigit\fP(3), \fBiswgraph\fP(3), \fBiswlower\fP(3), \fBiswprint\fP(3), \fBiswpunct\fP(3), \fBiswspace\fP(3), \fBiswupper\fP(3), \fBiswxdigit\fP(3), \fBnewlocale\fP(3), \fBsetlocale\fP(3), \fBtoascii\fP(3), \fBtolower\fP(3), \fBtoupper\fP(3), \fBuselocale\fP(3), \fBascii\fP(7), \fBlocale\fP(7) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 4.16 des Projekts Linux\-\fIman\-pages\fP. 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/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann , Mario Blättermann und Dr. Tobias Quathamer 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 .