Char et Chaîne de Caractères
En C, il n'existe pas de type de données dédié pour les chaînes de caractères (texte). À la place, le texte est stocké sous forme de tableau de char, où chaque élément contient un seul caractère. Par exemple, le texte c<>definity serait représenté comme une séquence de caractères stockés dans un tel tableau.
char arr[12] = {'c','<','>','d','e','f','i','n','i','t','y','\0'};
Vous remarquerez peut-être que le texte "c<>definity" comporte 11 caractères, mais que le tableau contient 12 éléments. Cet élément supplémentaire stocke le caractère de terminaison nul \0, qui marque la fin d'une chaîne en C.
Il ne s'agit pas du chiffre zéro, mais d'un caractère spécial non imprimable (code ASCII 0) qui indique au programme où la chaîne se termine.
Veillez toujours à ce que votre tableau de caractères soit d'un élément plus grand que le texte qu'il contient afin de prévoir ce caractère de terminaison.
Il est essentiel de reconnaître que 'x' et "x" ne sont pas la même chose.
Une chaîne de caractères est composée de caractères. Toujours se rappeler de terminer une chaîne avec le caractère \0.
'x'est simplement une constante de caractère du type char ;"x"est une chaîne de caractères, un tableau de valeurs char, ou, dans ce cas, {'x', '\0'}.
Ne pas confondre '\0', '0' et "0".
'\0' est le caractère nul (ASCII 0), '0' est le chiffre zéro (ASCII 48), et "0" est une chaîne de caractères contenant le chiffre zéro suivi du terminateur \0.
Affichage de chaînes de caractères
En C, pour afficher des chaînes de caractères (tableaux de valeurs char), on utilise le spécificateur %s. Ce spécificateur indique à la fonction printf() le type d'information attendu. En utilisant %s, on informe la fonction printf() qu'elle recevra une chaîne de caractères.
main.c
12345678910#include <stdio.h> int main() { char array[] = { 'c','<','>','d','e','f','i','n','i','t','y','\0' }; printf("%s\n", array); // use %s format specifiers return 0; }
Le langage C inclut une bibliothèque standard pour la manipulation des chaînes de caractères, <string.h>. Dans cette bibliothèque, il existe une fonction qui compte le nombre de caractères dans une chaîne de caractères :
main.c
123456789101112#include <stdio.h> #include <string.h> int main() { char array[] = { 'c','<','>','d','e','f','i','n','i','t','y','\0' }; printf("%d\n", strlen(array)); return 0; }
Rappelez-vous, même un espace est un caractère et il nécessite sa propre place dans le tableau. Par exemple : char array[10] = { 'u','s','e',' ','s','p','a','c','e','\0' }.
En utilisant un indice, il est possible d'accéder aux éléments de la chaîne. Puisque les chaînes sont essentiellement des tableaux de char, il est également possible de modifier les caractères individuels via leurs indices.
Main.c
123456789101112#include <stdio.h> int main() { char str[] = "c<>definity"; str[5] = '#'; // Change the sixth character `f` to `#` printf("%s\n", str); return 0; }
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 2.63
Char et Chaîne de Caractères
Glissez pour afficher le menu
En C, il n'existe pas de type de données dédié pour les chaînes de caractères (texte). À la place, le texte est stocké sous forme de tableau de char, où chaque élément contient un seul caractère. Par exemple, le texte c<>definity serait représenté comme une séquence de caractères stockés dans un tel tableau.
char arr[12] = {'c','<','>','d','e','f','i','n','i','t','y','\0'};
Vous remarquerez peut-être que le texte "c<>definity" comporte 11 caractères, mais que le tableau contient 12 éléments. Cet élément supplémentaire stocke le caractère de terminaison nul \0, qui marque la fin d'une chaîne en C.
Il ne s'agit pas du chiffre zéro, mais d'un caractère spécial non imprimable (code ASCII 0) qui indique au programme où la chaîne se termine.
Veillez toujours à ce que votre tableau de caractères soit d'un élément plus grand que le texte qu'il contient afin de prévoir ce caractère de terminaison.
Il est essentiel de reconnaître que 'x' et "x" ne sont pas la même chose.
Une chaîne de caractères est composée de caractères. Toujours se rappeler de terminer une chaîne avec le caractère \0.
'x'est simplement une constante de caractère du type char ;"x"est une chaîne de caractères, un tableau de valeurs char, ou, dans ce cas, {'x', '\0'}.
Ne pas confondre '\0', '0' et "0".
'\0' est le caractère nul (ASCII 0), '0' est le chiffre zéro (ASCII 48), et "0" est une chaîne de caractères contenant le chiffre zéro suivi du terminateur \0.
Affichage de chaînes de caractères
En C, pour afficher des chaînes de caractères (tableaux de valeurs char), on utilise le spécificateur %s. Ce spécificateur indique à la fonction printf() le type d'information attendu. En utilisant %s, on informe la fonction printf() qu'elle recevra une chaîne de caractères.
main.c
12345678910#include <stdio.h> int main() { char array[] = { 'c','<','>','d','e','f','i','n','i','t','y','\0' }; printf("%s\n", array); // use %s format specifiers return 0; }
Le langage C inclut une bibliothèque standard pour la manipulation des chaînes de caractères, <string.h>. Dans cette bibliothèque, il existe une fonction qui compte le nombre de caractères dans une chaîne de caractères :
main.c
123456789101112#include <stdio.h> #include <string.h> int main() { char array[] = { 'c','<','>','d','e','f','i','n','i','t','y','\0' }; printf("%d\n", strlen(array)); return 0; }
Rappelez-vous, même un espace est un caractère et il nécessite sa propre place dans le tableau. Par exemple : char array[10] = { 'u','s','e',' ','s','p','a','c','e','\0' }.
En utilisant un indice, il est possible d'accéder aux éléments de la chaîne. Puisque les chaînes sont essentiellement des tableaux de char, il est également possible de modifier les caractères individuels via leurs indices.
Main.c
123456789101112#include <stdio.h> int main() { char str[] = "c<>definity"; str[5] = '#'; // Change the sixth character `f` to `#` printf("%s\n", str); return 0; }
Merci pour vos commentaires !