c character classification
Ce didacticiel explique les fonctions de caractères et de transformation C ++ avec des exemples. Certaines fonctions importantes couvertes sont isdigit, islower, isupper, isalpha etc.:
Dans notre précédent tutoriel sur les «fonctions de bibliothèque», nous avons vu les différents en-têtes qui fournissent de nombreuses fonctions qui opèrent sur différents types de données. L'en-tête est l'un de ces en-têtes qui contient un ensemble de fonctions qui classent et manipulent des caractères individuels.
=> Visitez ici pour apprendre le C ++ à partir de zéro.
Les fonctions déclarées dans header, prennent un seul caractère (équivalent int) comme paramètre et renvoient une valeur entière qui peut être une valeur booléenne ou une valeur de caractère. Une valeur 0 (zéro) indique faux tandis qu'une valeur autre que 0 (non nulle) indique vrai.
Ces fonctions à caractère unique peuvent être utilisées dans le programme en incluant l'en-tête. Ces fonctions sont largement utilisées et acceptées et sont extrêmement utiles dans la programmation C ++ pour tester et transformer ou manipuler des caractères.
Dans ce tutoriel, nous discuterons des différentes fonctions de caractères et verrons comment chacune de ces fonctions peut être utilisée dans un programme.
Ce que vous apprendrez:
Fonctions de caractères C ++
Les fonctions de caractère C ++ sont les fonctions qui n'acceptent qu'un seul caractère comme paramètre (converti en int) et renvoient un résultat. Il peut s'agir de fonctions de classification telles que isalpha, isalnum, isdigit, islower, isupper, etc.
Dans l'en-tête, nous avons deux types de fonctions définies comme indiqué ci-dessous.
(i) Fonctions de classification des caractères
Les fonctions de classification de caractères sont utilisées pour vérifier si le caractère unique passé en argument à la fonction appartient à une certaine catégorie.
Nous avons tabularisé les fonctions de classification des caractères incluses dans l'en-tête ci-dessous:
Ne pas | Nom de la fonction | Objectif de la fonction |
---|---|---|
sept | est plus bas | Vérifie si un caractère donné est en minuscules |
1 | isalnum | Vérifie si un caractère donné est alphanumérique |
deux | isalpha | Vérifie si le caractère est alphabétique |
3 | est vide | Vérifie si le caractère est vide |
4 | iscntrl | Vérifie si le caractère donné est un caractère de contrôle |
5 | isdigit | Vérifie si le caractère donné est un chiffre décimal |
6 | isgraphe | Vérifie si le caractère donné a une représentation graphique |
8 | impression | Vérifie si le caractère est un caractère imprimable |
9 | ispunct | Vérifie si le caractère est un caractère de ponctuation |
dix | espace | Vérifie si le caractère est un espace blanc |
Onze | isupper | Vérifie si le caractère donné est en majuscule |
12 | isxdigit | Vérifie si le caractère hexadécimal |
(ii) Fonctions de transformation de caractères
Les fonctions de transformation de caractères convertissent entre les cas. Les fonctions suivantes sont incluses dans le fichier.
Ne pas | Nom de la fonction | But de la fonction |
---|---|---|
1 | baisser | Convertit les majuscules en minuscules |
deux | toupper | Convertit les minuscules en majuscules |
Voyons en détail chacune des fonctions de caractère (classification et transformation). Nous présenterons également un exemple de programmation C ++ simple pour chacune des fonctions.
Isalnum
Prototype de fonction: int isalnum (int c);
Paramètres): c => Un caractère à vérifier s'il est alphanumérique ou non
Valeur de retour:
non nul => c est alphanumérique
0 => c n'est pas alphanumérique
La description: Cette fonction vérifie si un caractère c donné est alphanumérique ou non. Par alphanumérique, cela signifie qu'un caractère est compris entre A (a) -Z (z) ou 0 à 9.
En C ++, cette fonction est spécifique aux paramètres régionaux et sa définition est présente dans l'en-tête.
Exemple:
#include #include using namespace std; int main() { char chary(12) = 'Hello World'; // checking for isalnum() function for (int i=0; i<12; i++) { if (isalnum(chary (i))) cout << chary (i) << ' is alphanumeric' << endl; else cout << chary (i) << ' is not alphanumeric' << endl; } cout << endl; }
Production:
Isalpha
Prototype de fonction: int isalpha (int c);
Paramètres): c-> Caractère à vérifier s'il est alphabétique ou non.
Valeur de retour:
non nul => c est alphabétique
0 => pas alphabétique
La description: Cette fonction vérifie si un caractère c donné est un caractère alphabétique, c'est-à-dire entre des lettres minuscules et majuscules. Comme isalnum, cette fonction dépend également de la locale que nous utilisons.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(5) = 'sth1'; for (int i=0; i<5; i++) { if (isalpha(ch_alpha(i))) cout << ch_alpha(i) << ' is an alphabet' << endl; else cout << ch_alpha(i) << ' is not an alphabet' << endl; } cout << endl; }
Production:
Isblank
Prototype de fonction: int isblank (int c);
Paramètres): c => Caractère à vérifier.
Valeur de retour:
différent de zéro => le caractère est vide
0 => le caractère n'est pas vide
La description: Cette fonction vérifie si le caractère donné est un blanc ou non. Le caractère vide est un caractère d'espacement utilisé pour séparer les mots d'une ligne de texte.
En C ++, la version spécifique aux paramètres régionaux de la fonction isblank existe dans.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(6) = 's t h'; for (int i=0; i<6; i++) { if (isblank(ch_alpha(i))) cout << ch_alpha(i) << ' is a blank' << endl; else cout << ch_alpha(i) << ' is not a blank' << endl; } cout << endl; }
Production:
Notez la dernière ligne dans la sortie qui dit «n'est pas vide». Cela est dû à la dernière position du tableau de caractères qui n’est pas initialisée à une valeur mais qui a toujours une position d’impression. Ce n'est donc pas un blanc.
Iscntrl
Prototype de fonction: int iscntrl (int c);
Paramètres): c => Caractère à vérifier
Valeur de retour:
non nul => c est le caractère de contrôle
0 => c n'est pas le caractère de contrôle
La description: La fonction vérifie si le paramètre donné est un caractère de contrôle. Un caractère de contrôle est un caractère qui n'apparaît pas à l'écran ou n'occupe pas de position d'impression.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(6) = 's
t h'; for (int i=0; i<6; i++) { if (iscntrl(ch_alpha(i))) cout << ch_alpha(i) << ' is a control character' << endl; else cout << ch_alpha(i) << ' is not a control character' << endl; } cout << endl; }
Production:
Isdigit
Prototype de fonction: int isdigit (int c)
Paramètres): c => Un caractère converti en int dont la valeur doit être vérifiée.
Valeur de retour: différent de zéro => c est un chiffre décimal
0 => c n'est pas un chiffre
La description: Cette fonction vérifie si le paramètre donné est un chiffre décimal ou non. Un caractère est un chiffre décimal si sa valeur est comprise entre 0 et 9.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(5) = 'a12b'; for (int i=0; i<5; i++) { if (isdigit(ch_alpha(i))) cout << ch_alpha(i) << ' is a digit' << endl; else cout << ch_alpha(i) << ' is not a digit' << endl; } cout << endl; }
Production:
Isgraph
Prototype de fonction: int isgraph (int c)
Paramètres): c => Caractère casté int vérifié à l'aide de la fonction isgraph
Valeur de retour:
non nul => c est une représentation graphique
0 => c n'est pas une représentation graphique
La description: La fonction vérifie si le caractère donné c est un caractère avec une représentation graphique. Un caractère qui peut être imprimé est un caractère avec une représentation graphique.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(6) = 'a~12b'; for (int i=0; i<6; i++) { if (isgraph(ch_alpha(i))) cout << ch_alpha(i) << ' is a graphical character' << endl; else cout << ch_alpha(i) << ' is not a graphical character' << endl; } cout << endl; }
Production:
Est plus bas
Prototype de fonction: int islower (int c)
Paramètres): c => Caractère à vérifier à l'aide de la fonction islower.
Valeur de retour:
non-zer0 => c est minuscule
0 => c n'est pas minuscule
La description: La fonction islower vérifie si le caractère c donné est en minuscule ou non.
Un caractère minuscule est celui qui a l'une des valeurs: a b c d e f g h I j k l m n o p q r s t u v w x y z.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(4) = 'Sth'; for (int i=0; i<4; i++) { if (islower(ch_alpha(i))) cout << ch_alpha(i) << ' is a lowercase character' << endl; else cout << ch_alpha(i) << ' is not a lowercase character' << endl; } cout << endl; }
Production:
Impression
Prototype de fonction: sprint int (int c)
Paramètres): c => Caractère à vérifier à l'aide de la fonction isprint.
Valeur de retour:
non-zer0 => c est imprimable
0 => c n'est pas imprimable
La description: La fonction isprint vérifie si le caractère donné est imprimable. Un caractère imprimable est celui qui occupe une position d'impression dans l'affichage.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(4) = 'Sth'; for (int i=0; i<4; i++) { if (isprint(ch_alpha(i))) cout << ch_alpha(i) << ' is a printable character' << endl; else cout << ch_alpha(i) << ' is not a printable character' << endl; } cout << endl; }
Production:
Ispunct
Prototype de fonction: int ispunct (int c)
Paramètres): c => Caractère à vérifier à l'aide de la fonction ispunct.
Valeur de retour:
non-zer0 => c est un caractère de ponctuation
0 => c n'est pas un caractère de ponctuation
La description: Cette fonction vérifie si le caractère donné est un caractère de ponctuation. Un caractère qui est un caractère graphique (de isgraph) et non un caractère alphanumérique (de isalnum) est considéré comme un caractère de ponctuation.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(8) = 'sth@123'; for (int i=0; i<8; i++) { if (ispunct(ch_alpha(i))) cout << ch_alpha(i) << ' is a punctuation character' << endl; else cout << ch_alpha(i) << ' is not a punctuation character' << endl; } cout << endl; }
Production:
Isspace
Prototype de fonction: int isspace (int c)
Paramètres): c => Caractère à vérifier à l'aide de la fonction isspace.
Valeur de retour:
non-zer0 => c est un espace blanc
0 => c n'est pas un espace blanc
La description: Cette fonction vérifie si le caractère donné est un espace blanc. Pour l'environnement local «C», les caractères d'espacement sont l'un des suivants.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(7) = 's t
h'; for (int i=0; i<7; i++) { if (isspace(ch_alpha(i))) cout << ch_alpha(i) << ' is a white space' << endl; else cout << ch_alpha(i) << ' is not a white space' << endl; } cout << endl; }
Production:
Isupper
Prototype de fonction: int isupper (int c)
Paramètres): c => Caractère à vérifier à l'aide de la fonction isupper.
Valeur de retour:
non-zer0 => c est en majuscule
0 => c n'est pas en majuscule
La description: La fonction islower vérifie si le caractère c donné est en majuscule ou non.
Un caractère majuscule est celui qui a l'une des valeurs: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(4) = 'STh'; for (int i=0; i<4; i++) { if (isupper(ch_alpha(i))) cout << ch_alpha(i) << ' is an uppercase character' << endl; else cout << ch_alpha(i) << ' is not an uppercase character' << endl; } cout << endl; }
Production:
Isxdigit
Prototype de fonction: int isxdigit (int c)
Paramètres): c => Caractère à vérifier à l'aide de la fonction isxdigit.
Valeur de retour:
non-zer0 => c est hexadécimal
0 => c n'est pas un hexadécimal
La description: Cette fonction vérifie si le caractère donné est un chiffre hexadécimal. Les chiffres hexadécimaux valides sont 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
Exemple:
#include #include using namespace std; int main() { char ch_alpha(6) = 'sbc10'; for (int i=0; i<6; i++) { if (isxdigit(ch_alpha(i))) cout << ch_alpha(i) << ' is hexadecimal digit' << endl; else cout << ch_alpha(i) << ' is not hexadecimal digit' << endl; } cout << endl; }
Production:
baisser
Prototype de fonction: int tolower (int c)
Paramètres): c => Caractère à convertir en minuscules.
Valeur de retour:
renvoie l'équivalent inférieur de c, inchangé dans le cas contraire.
La valeur de retour est int et peut être implicitement convertie en char.
La description: Cela convertit le caractère donné c en son équivalent minuscule. Si la conversion n'est pas possible pour un caractère donné, la valeur inchangée (c) est renvoyée.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(4) = 'STH'; cout< Production:
STH converti en minuscules: sth
toupper
Prototype de fonction: int toupper (int c)
Paramètres): c => caractère à convertir en majuscule
Valeur de retour:
renvoie l'équivalent supérieur de c, inchangé dans le cas contraire.
est la clé réseau le mot de passe wifi
La valeur de retour est int et peut être implicitement convertie en char.
La description: Ceci convertit le caractère donné c en son équivalent majuscule. Si une conversion n'est pas possible pour un caractère donné, la valeur inchangée (c) est renvoyée.
Exemple:
#include #include using namespace std; int main() { char ch_alpha(10) = 'tutorials'; cout< Production:
tutoriels convertis en minuscules: TUTORIELS
Conclusion
Ceci termine notre tutoriel sur les fonctions Character en C ++.
Dans ce didacticiel, nous avons vu diverses fonctions qui prennent un seul caractère, puis les classent ou les convertissent. Dans nos didacticiels suivants, nous discuterons des chaînes et de leurs fonctions et classes liées au C ++.
=> Découvrez la série de formations Simple C ++ ici.
lecture recommandée