Namensräume
Varianten
Aktionen

isalpha

Von cppreference.com
< c‎ | string‎ | byte
Definiert in 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 anderen Locales als "C" ist ein alphabetisches Zeichen ein Zeichen, für das isupper() oder islower() true zurückgibt, oder jedes andere Zeichen, das vom Locale 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.

Inhalt

[bearbeiten] Parameter

ch - zu klassifizierendes Zeichen

[bearbeiten] Rückgabewert

Ein Wert ungleich Null, wenn das Zeichen ein alphabetisches Zeichen ist, ansonsten Null.

[bearbeiten] Beispiel

Demonstriert die Verwendung von isalpha mit verschiedenen Locales (OS-spezifisch).

#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

[bearbeiten] Referenzen

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

[bearbeiten] Siehe auch

prüft, ob ein breites Zeichen alphabetisch ist
(Funktion) [bearbeiten]
C++-Dokumentation für isalpha
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 Steuercodes (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 Steuercodes ≠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ücktaste (DEL) ≠0 0 0 0 0 0 0 0 0 0 0 0