Namespaces
Variants

iswcntrl

From cppreference.net
< c ‎ | string ‎ | wide
Défini dans l'en-tête <wctype.h>
int iswcntrl ( wint_t ch ) ;
(depuis C95)

Vérifie si le caractère large donné est un caractère de contrôle, c'est-à-dire les codes 0x00-0x1F et 0x7F ainsi que tout caractère de contrôle spécifique aux paramètres régionaux actuels.

Table des matières

Paramètres

ch - caractère large

Valeur de retour

Valeur non nulle si le caractère large est un caractère de contrôle, zéro sinon.

Notes

ISO 30112 définit les caractères de contrôle POSIX comme les caractères Unicode U+0000..U+001F, U+007F..U+009F, U+2028 et U+2029 (classes Unicode Cc, Zl et Zp)

Exemple

#include <locale.h>
#include <stdio.h>
#include <wchar.h>
#include <wctype.h>
int main(void)
{
    wchar_t c = L'\u2028'; // the Unicode character "line separator"
    printf("In the default locale, iswcntrl(%#x) = %d\n", c, !!iswcntrl(c));
    setlocale(LC_ALL, "en_US.utf8");
    printf("In Unicode locale, iswcntrl(%#x) = %d\n", c, !!iswcntrl(c));
}

Sortie :

In the default locale, iswcntrl(0x2028) = 0
In Unicode locale, iswcntrl(0x2028) = 1

Références

  • Norme C23 (ISO/IEC 9899:2024):
  • 7.30.2.1.4 La fonction iswcntrl (p: TBD)
  • Norme C17 (ISO/CEI 9899:2018) :
  • 7.30.2.1.4 La fonction iswcntrl (p: TBD)
  • Norme C11 (ISO/IEC 9899:2011) :
  • 7.30.2.1.4 La fonction iswcntrl (p: 449)
  • Norme C99 (ISO/IEC 9899:1999) :
  • 7.25.2.1.4 La fonction iswcntrl (p : 395)

Voir aussi

vérifie si un caractère est un caractère de contrôle
(fonction)
Documentation C++ pour iswcntrl
**Note:** Aucun texte à traduire n'a été trouvé dans ce fragment HTML. Le contenu se compose principalement de : - Valeurs numériques (48-57) - Codes hexadécimaux et octaux dans des balises ` ` - Symboles mathématiques (≠0) - Chiffres (0123456789) Tous ces éléments sont préservés tels quels conformément aux instructions. **Note:** Aucun texte n'a été traduit car : - Les nombres et codes C++ sont conservés tels quels - Les balises HTML et leur contenu sont préservés - Le texte dans les balises ` ` n'est pas traduit - Les termes spécifiques au C++ restent en anglais **Note:** Aucun texte n'a été traduit car : - Les nombres et caractères dans les balises ` ` sont préservés - Les symboles mathématiques (`≠0`) sont des notations techniques - Les plages numériques (103–122) ne nécessitent pas de traduction - Aucun texte descriptif n'était présent en dehors des balises ` `
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 d'effacement ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0