Namespaces
Variants

isgraph

From cppreference.net
< c ‎ | string ‎ | byte
Défini dans l'en-tête <ctype.h>
int isgraph ( int ch ) ;

Vérifie si le caractère donné a une représentation graphique, c'est-à-dire s'il s'agit soit d'un chiffre ( 0123456789 ), d'une lettre majuscule ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), d'une lettre minuscule ( abcdefghijklmnopqrstuvwxyz ), d'un caractère de ponctuation ( !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ), ou de tout caractère graphique spécifique à la locale C actuelle.

Le comportement n'est pas défini si la valeur de ch n'est pas représentable en tant que unsigned char et n'est pas égale à EOF .

Table des matières

Paramètres

ch - caractère à classifier

Valeur de retour

Valeur non nulle si le caractère possède une représentation graphique, zéro sinon.

Exemple

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

Sortie possible :

In the default C locale, \xb6 is not graphical
In ISO-8859-1 locale, \xb6 is graphical

Références

  • Norme C23 (ISO/CEI 9899:2024) :
  • 7.4.1.6 La fonction isgraph (p: TBD)
  • Norme C17 (ISO/CEI 9899:2018) :
  • 7.4.1.6 La fonction isgraph (p: 146)
  • Norme C11 (ISO/CEI 9899:2011) :
  • 7.4.1.6 La fonction isgraph (p: 201-202)
  • Norme C99 (ISO/CEI 9899:1999) :
  • 7.4.1.6 La fonction isgraph (p: 182-183)
  • Norme C89/C90 (ISO/IEC 9899:1990) :
  • 4.3.1.5 La fonction isgraph

Voir aussi

vérifie si un caractère large est un caractère graphique
(fonction)
Documentation C++ pour isgraph
**Note:** Aucun texte n'a été traduit car : - Les nombres (48–57) et les caractères (0123456789) ne nécessitent pas de traduction - Le contenu des balises ` ` est préservé (\x30, \x39, \60, \71, 0, ≠0) - Les symboles mathématiques (≠) ne sont pas traduits - Aucun texte en langage naturel n'est présent dans ce fragment HTML **Note:** Aucun texte n'a été traduit car : - Les nombres et plages numériques (71–90) ne nécessitent pas de traduction - Tout le contenu se trouve dans des balises ` ` qui doivent être préservées - Les symboles mathématiques (≠0) sont universels - Aucun texte libre en dehors des balises techniques n'était présent
Valeurs ASCII Caractères

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

décimal hexadécimal octal
0–8 \x0 \x8 \0 \10 codes de contrôle ( NUL , etc.) ≠0 0 0 0 0 0 0 0 0 0 0 0
9 \x9 \11 tabulation ( \t ) ≠0 0 ≠0 ≠0 0 0 0 0 0 0 0 0
10–13 \xA \xD \12 \15 espaces blancs ( \n , \v , \f , \r ) ≠0 0 ≠0 0 0 0 0 0 0 0 0 0
14–31 \xE \x1F \16 \37 codes de contrôle ≠0 0 0 0 0 0 0 0 0 0 0 0
32 \x20 \40 espace 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 caractère backspace ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0