Namespaces
Variants

isalpha

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

Prüft, ob das gegebene Zeichen ein alphabetisches Zeichen ist, d.h. entweder ein Großbuchstabe ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ) oder ein Kleinbuchstabe ( abcdefghijklmnopqrstuvwxyz ).

In Gebietsschemata außer "C" ist ein alphabetisches Zeichen ein Zeichen, für das isupper() oder islower() true zurückgibt, oder jedes andere Zeichen, das vom Gebietsschema als alphabetisch betrachtet wird. In jedem Fall geben iscntrl() , isdigit() , ispunct() und isspace() für dieses Zeichen false zurück.

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 alphabetisches Zeichen ist, andernfalls Null.

Beispiel

Demonstriert die Verwendung von isalpha 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("isalpha('\\xdf') in default C locale returned %d\n", !!isalpha(c));
    setlocale(LC_CTYPE, "de_DE.iso88591");
    printf("isalpha('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalpha(c));
}

Mögliche Ausgabe:

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

Referenzen

  • C23-Standard (ISO/IEC 9899:2024):
  • 7.4.1.2 Die isalpha-Funktion (S.: TBD)
  • C17-Standard (ISO/IEC 9899:2018):
  • 7.4.1.2 Die isalpha-Funktion (S. 145)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.4.1.2 Die isalpha-Funktion (S: 200-201)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.4.1.2 Die isalpha-Funktion (S: 181-182)
  • C89/C90 Standard (ISO/IEC 9899:1990):
  • 4.3.1.2 Die isalpha-Funktion

Siehe auch

prüft, ob ein Breitzeichen alphabetisch ist
(Funktion)
C++-Dokumentation für isalpha
**Änderungen:** - "control codes" wurde zu "Steuerzeichen" übersetzt - Alle HTML-Tags, Attribute und Code-Blöcke wurden unverändert beibehalten - C++-spezifische Begriffe wie `NUL` wurden nicht übersetzt - Die Formatierung und Struktur der Tabelle bleibt vollständig erhalten **Anmerkung:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente außerhalb der geschützten Tags. Alle Inhalte innerhalb der ` `-Tags und numerischen Werte bleiben unverändert, wie in den Anforderungen spezifiziert.
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 Rücklöschtaste ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0