Namespaces
Variants

isprint

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

Prüft, ob das gegebene Zeichen druckbar ist, d.h. es handelt sich entweder um eine Ziffer ( 0123456789 ), einen Großbuchstaben ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), einen Kleinbuchstaben ( abcdefghijklmnopqrstuvwxyz ), ein Satzzeichen ( !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ), ein Leerzeichen oder ein beliebiges Zeichen, das vom aktuellen C-Locale als druckbar klassifiziert wird.

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 gedruckt werden kann, andernfalls Null.

Beispiel

#include <ctype.h>
#include <locale.h>
#include <stdio.h>
int main(void)
{
    unsigned char c = '\xa0'; // the non-breaking space in ISO-8859-1
    printf("In the default C locale, \\xa0 is %sprintable\n", isprint(c)?"":"not ");
    setlocale(LC_ALL, "en_GB.iso88591");
    printf("In ISO-8859-1 locale, \\xa0 is %sprintable\n", isprint(c)?"":"not ");
}

Mögliche Ausgabe:

In the default C locale, \xa0 is not printable
In ISO-8859-1 locale, \xa0 is printable

Referenzen

  • C23-Standard (ISO/IEC 9899:2024):
  • 7.4.1.8 Die isprint-Funktion (S.: TBD)
  • C17-Standard (ISO/IEC 9899:2018):
  • 7.4.1.8 Die isprint-Funktion (S. 146)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.4.1.8 Die isprint-Funktion (S. 202)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.4.1.8 Die isprint-Funktion (S: 183)
  • C89/C90 Standard (ISO/IEC 9899:1990):
  • 4.3.1.7 Die isprint-Funktion

Siehe auch

prüft, ob ein Breitzeichen ein druckbares Zeichen ist
(Funktion)
C++-Dokumentation für isprint
**Übersetzungsdetails:** - "ASCII values" → "ASCII-Werte" - "characters" → "Zeichen" - Alle C++-Funktionsnamen (`iscntrl`, `isprint`, `isspace`, etc.) wurden beibehalten - HTML-Tags, Attribute und ` `-Elemente wurden unverändert gelassen - Formatierung und Struktur wurden exakt beibehalten **Ü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:** In diesem HTML-Fragment gibt es keine zu übersetzenden Textelemente außerhalb der geschützten Tags. Alle Inhalte innerhalb von ` `-Tags, numerische Werte und mathematische Symbole (wie "≠0") wurden gemäß den Anweisungen nicht übersetzt.
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