Extraire une sous-chaîne de caractères d’une chaîne de caractères en C

Dans ce tutoriel nous allons découvrir comment écrire un programme qui demande à l’utilisateur d’entrer une chaîne et extrait la sous-chaîne (une partie de la chaîne). Pour obtenir la sous-chaîne de la chaîne, nous prenons l’index ‘from’ et ‘to’ (début et fin).

Ici, nous implémentons une fonction définie nommée extract(). Cette fonction prend quatre arguments, la chaîne source, la sous-chaîne, index de départ(from) et index de fin(to), et renverra soit 0 (en cas d’exécution réussie), soit 1 (en cas d’échec de l’exécution).
 
 

Extraire une sous-chaîne de caractères d’une chaîne de caractères en C
#include <stdio.h>
#include <string.h>

int extract(int from, int to, char *chaine, char *sousChaine)
{
	int i=0, j=0;
	//récupérer la longueur de la chaîne
	int length = strlen(chaine);
	
	if( from > length || from < 0 ){
		printf("L'index 'from' est invalide\n");
		return 1;
	}
	if( to > length ){
		printf("L'index 'to' est invalide\n");
		return 1;
	}	
	for( i = from, j = 0; i <= to; i++, j++){
		sousChaine[j] = chaine[i];
	}	
	return 0;	
}

int main()
{
	char chaine[100];
	char sousChaine[50];
	int from,to;
	
	printf("Entrez une chaîne de caractères: ");
	fgets(chaine,100,stdin);
	printf("Entrez l'index 'from': ");
	scanf("%d",&from);
	printf("Entrez l'index 'to': ");
	scanf("%d",&to);	
	
	printf("La chaîne de caractères est : %s",chaine);
	
	if( extract(from, to, chaine, sousChaine) == 0 )
	    printf("La sous chaîne de caractères est : %s", sousChaine);
    else
        printf("Erreur!\n");
	
	return 0;
}

La sortie :

 
 

Une réflexion sur “Extraire une sous-chaîne de caractères d’une chaîne de caractères en C

  • décembre 9, 2021 à 9:14 pm
    Permalien

    Serait-il possible d’obtenir ce programme en c++ s’il vous plait ?

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *