En C, une chaîne de caractères est un tableau de caractères terminée par NULL. L`identifiant "const" constante est pour les variables qui ne changent pas au cours de la vie d`un programme C. Vous pouvez déclarer une variable, à l`exception des variables de registre, constante avec le qualificatif const. Pour déclarer une constante chaîne en C, vous combinez le type qualificatif const avec une déclaration de tableau de caractères. Vous devez initialiser votre chaîne constante lors de la déclaration du tableau, puisque vous ne pouvez pas attribuer des valeurs à une variable constante dans un programme C.
Déterminer le nom du tableau de caractères pour votre chaîne constante, ainsi que sa valeur initiale. Par exemple, créer un tableau de caractères variable "name" et l`initialiser à "George Washington."
Indiquez si la constante chaîne a une portée locale ou globale. Si elle est locale à une fonction spécifique, déclarer au sein du bloc de cette fonction. Si la chaîne constante est mondiale, déclarer ci-dessus toutes les fonctions qui ont besoin d`accéder à la chaîne constante.
Déclarez la constante chaîne, par exemple: const char nom [] = "George Washington" -. Rappelez-vous, vous devez initialiser les constantes sur la déclaration, comme vous ne pouvez pas modifier la variable au sein de votre programme. Puisque vous initialisez la variable de chaîne, vous ne pas besoin de spécifier une longueur de tableau, comme le compilateur déterminera pour vous. En outre, si vous utilisez la notation abrégée d`initialisation d`un tableau de caractères avec la chaîne de style "George" plutôt que la méthode longhand de la chaîne `G`, `e`, `o`, `r`, `g`, `e `,` 0 `, C fournira le NULL de fin pour mettre fin à la chaîne.
Conseils Avertissements
- Si vous décidez d`utiliser la notation longhand pour initialiser votre chaîne constante, rappelez-vous de fournir le NULL de fin vous. Par exemple, initialisant le tableau "nom" à "Peter" serait: const char nom [] = { `P`, `e`, `t`, `e`, `r`, ` 0`} - Le notation abrégée serait: const char nom [] = "Peter" -. Tous les deux le même résultat.
- Étant donné que le résultat de l`évolution d`une variable constante est spécifique à la mise en œuvre, il n`y a aucune garantie que votre chaîne constante restera inchangé. Le compilateur peut ignorer un changement de valeur si elle place des constantes dans la mémoire en lecture seule. Cependant, vous ne devez pas effectuer des astuces de programmation impliquant l`évolution constantes, car cela produirait un code fiable.
- Beaucoup début programmeurs C confondent la mention «const char nom [] =" mai ";" avec "const char * nom =" Mai ";". La première instruction crée une chaîne constante et utilise la méthode abrégée de l`initialisation du tableau de caractères pour contenir la chaîne `M`, `a`, `y`, ` 0`. La deuxième déclaration crée une variable de pointeur qui pointe vers le premier caractère d`une constante de chaîne.