Comment faire pour créer une chaîne de caractères en C ++

Les éléments d'un tableau en C ++ peut être de tout type. Les tableaux de flotteurs, doubles, et longs sont tous possible- cependant, des tableaux de caractères ont une signification particulière.

Dans de nombreux cas, toutes les valeurs de chaque élément sont possibles. Cependant, C ++ se réserve le spécial “ le caractère ” 0 en tant que non-caractère. Tu peux utiliser ' 0' pour marquer la fin d'un tableau de caractères. (La valeur numérique ' 0' est égal à 0, mais le type de ' 0' est carboniser.)

Le personnage 'y' est le caractère dont la valeur octale est y. Le personnage ' 0' est le caractère d'une valeur de 0, autrement connu comme le caractère nul.

// DisplayString - sortie d'un tableau de caractères à // la sortie standard, la fenêtre MS-DOS # include #comprendre #comprendre using namespace std - // prototype declarationsvoid displayString (char stringArray []) - int main (int nNumberofArgs, char * pszArgs []) {char charMyName [] = {'S', 't', 'e', ​​'p' , 'h', 'e', ​​'n', ' 0'} - displayString (charMyName) -cout lt; lt; endl - // attendre utilisateur est prêt avant le programme // mettre fin pour permettre à l'utilisateur de voir le resultscout de programme lt; lt; "Appuyez sur Entrée pour continuer ..." lt; lt; endl-cin.ignore (10, ' n') - cin.get () - retour 0 -} // displayString - afficher une chaîne de caractères // un caractère à la displayString timevoid (char stringArray []) {for (int i = 0- stringArray [i]! = ' 0'- i ++) {cout lt; lt; stringArray [i] -}}



La déclaration de charMyName déclare le tableau de caractères avec le caractère nul supplémentaire ' 0' a la fin. La displayString itération du programme à travers le tableau de caractères jusqu'à un caractère nul est rencontré.

La fonction displayString () est plus simple à utiliser que ses displayCharArray () prédécesseur, car il est plus nécessaire de passer le long de la longueur de la matrice de caractère. Cette poignée de main secrète de mettre fin à un tableau de caractères avec une valeur NULL est si commode qu'il est utilisé dans le langage C ++. C ++ donne même un tel réseau un nom spécial.

UN chaîne de caractères est un tableau de caractères à terminaison nulle. Il est officiellement connu comme un chaîne d'octets terminée par null, ou BNT. Le terme simple C-string est également utilisé pour différencier le type de la C chaîne.

Le choix de ' 0' que le caractère de terminaison était pas aléatoire. Rappelez-vous que 0 est la seule valeur numérique qui convertit faux- toutes les autres valeurs se traduisent par vrai. Cela signifie que le pour la boucle pourrait être (et est généralement) écrit

for (int i = 0- stringArray [i] - i ++)

Toute cette affaire de chaînes de caractères terminée par NULL est tellement ancrée dans la psyché C ++ du langage C ++ qui utilise une chaîne de caractères entourés par des guillemets doubles pour être un tableau de caractères automatiquement résilié avec un ' 0' personnage. Les éléments suivants sont des déclarations identiques:

omble szMyName [] = "Stephen" -char szAlsoMyName [] = {'S', 't', 'e', ​​'p', 'h', 'e', ​​'n', ' 0'} -

La convention de dénomination utilisée ici est exactement cela, une convention. C ++ ne se soucie pas. Le préfixe sz supports pour chaîne terminée par zéro.

La chaîne Stephen est de huit caractères et non pas sept - le caractère nul après la n est assumé. La chaîne "" est un caractère de long, constitué de seulement le caractère nul.


» » » » Comment faire pour créer une chaîne de caractères en C ++