Découper une chaîne de caractère en C
Dans ce tutoriel nous allons découvrir comment découper une chaîne de caractère en utilisant la fonction strtok. Pour séparer une chaîne, nous avons besoin d’un délimiteur – un délimiteur est un caractère qui sera utilisé pour découper la chaîne.
Supposons que nous ayons la chaîne de caractère suivante et que nous souhaitons extraire chaque mot de la chaîne de caractères.
char str[] = "Hello Welcome to WayToLearnX best online learning platform";
On remarque que les mots sont séparés par un espace. Donc, l’espace sera notre délimiteur dans ce cas là.
char d[] = " ";
La fonction strtok accepte deux paramètres – le premier est la chaîne de caractère à découper, le deuxième est le délimiteur. la fonction strtok renvoie un pointeur sur le caractère du prochain mot.
char *p = strtok(str, d);
Programme C pour découper une chaîne de caractère
#include <stdio.h> #include <string.h> int main() { char str[] = "Hello Welcome to WayToLearnX best online learning platform"; int len = strlen(str); char d[] = " "; char *p = strtok(str, d); while(p != NULL) { printf("'%s'\n", p); p = strtok(NULL, d); } printf("\n"); return 0; }
La sortie :