Namespaces
Variants

isalnum

From cppreference.net
< c ‎ | string ‎ | byte
Definiert in Header <ctype.h>
int isalnum ( int ch ) ;

Prüft, ob das gegebene Zeichen ein alphanumerisches Zeichen ist, wie von der aktuellen C-Lokalisierung klassifiziert. In der Standardlokalisierung sind die folgenden Zeichen alphanumerisch:

  • Ziffern ( 0123456789 ),
  • Großbuchstaben ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ),
  • Kleinbuchstaben ( abcdefghijklmnopqrstuvwxyz ).

Das Verhalten ist undefiniert, wenn der Wert von ch nicht als unsigned char darstellbar ist und nicht gleich EOF ist.

Inhaltsverzeichnis

Parameter

ch - zu klassifizierendes Zeichen

Rückgabewert

Ein Wert ungleich Null, wenn das Zeichen ein alphanumerisches Zeichen ist, 0 andernfalls.

Beispiel

Demonstriert die Verwendung von isalnum mit verschiedenen Locales (betriebssystemspezifisch).

#include <ctype.h>
#include <locale.h>
#include <stdio.h>
int main(void)
{
    unsigned char c = '\xdf'; // German letter ß in ISO-8859-1
    printf("isalnum('\\xdf') in default C locale returned %d\n", !!isalnum(c));
    if (setlocale(LC_CTYPE, "de_DE.iso88591"))
        printf("isalnum('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalnum(c));
}

Mögliche Ausgabe:

isalnum('\xdf') in default C locale returned 0
isalnum('\xdf') in ISO-8859-1 locale returned 1

Referenzen

  • C23-Standard (ISO/IEC 9899:2024):
  • 7.4.1.1 Die isalnum-Funktion (S.: TBD)
  • C17-Standard (ISO/IEC 9899:2018):
  • 7.4.1.1 Die isalnum-Funktion (S: 145)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.4.1.1 Die isalnum-Funktion (S: 200)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.4.1.1 Die isalnum-Funktion (S: 181)
  • C89/C90 Standard (ISO/IEC 9899:1990):
  • 4.3.1.1 Die isalnum-Funktion

Siehe auch

prüft, ob ein Breitzeichen alphanumerisch ist
(Funktion)
C++-Dokumentation für isalnum
**Übersetzungsdetails:** - "control codes" wurde zu "Steuerzeichen" übersetzt (technisch korrekter Begriff in der Informatik) - Alle HTML-Tags, Attribute und Code-Blöcke wurden unverändert beibehalten - C++-spezifische Begriffe wie `NUL` wurden nicht übersetzt - Zahlen, Symbole und Formatierung bleiben original erhalten **Anmerkung:** Der HTML-Code wurde gemäß den Anforderungen unverändert belassen. Da der Text innerhalb der ` `-Tags und numerische Werte nicht übersetzt werden sollten, und da außerhalb der Tags nur Zahlen und Bindestriche vorhanden sind, die ebenfalls nicht übersetzt werden müssen, bleibt der gesamte Inhalt unverändert. **Anmerkung:** Da der Text innerhalb der ` `-Tags nicht übersetzt werden soll und die Zahlen sowie C++-spezifischen Begriffe erhalten bleiben müssen, gibt es in diesem HTML-Fragment keine zu übersetzenden Textelemente. Die numerischen Werte, Hex-Codes, Oktal-Codes und Sonderzeichen bleiben unverändert.
ASCII-Werte Zeichen

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

Dezimal Hexadezimal Oktal
0–8 \x0 \x8 \0 \10 Steuerzeichen ( NUL , etc.) ≠0 0 0 0 0 0 0 0 0 0 0 0
9 \x9 \11 Tabulator ( \t ) ≠0 0 ≠0 ≠0 0 0 0 0 0 0 0 0
10–13 \xA \xD \12 \15 Leerzeichen ( \n , \v , \f , \r ) ≠0 0 ≠0 0 0 0 0 0 0 0 0 0
14–31 \xE \x1F \16 \37 Steuerzeichen ≠0 0 0 0 0 0 0 0 0 0 0 0
32 \x20 \40 Leerzeichen 0 ≠0 ≠0 ≠0 0 0 0 0 0 0 0 0
33–47 \x21 \x2F \41 \57 !"#$%&'()*+,-./ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
48–57 \x30 \x39 \60 \71 0123456789 0 ≠0 0 0 ≠0 0 ≠0 0 0 0 ≠0 ≠0
58–64 \x3A \x40 \72 \100 :;<=>?@ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
65–70 \x41 \x46 \101 \106 ABCDEF 0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 ≠0
71–90 \x47 \x5A \107 \132 GHIJKLMNOP
QRSTUVWXYZ
0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 0
91–96 \x5B \x60 \133 \140 [\]^_` 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
97–102 \x61 \x66 \141 \146 abcdef 0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 ≠0
103–122 \x67 \x7A \147 \172 ghijklmnop
qrstuvwxyz
0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 0
123–126 \x7B \x7E \173 \176 {|}~ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
127 \x7F \177 Löschtaste ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0