#include <iostream.h> //------------------------------------------------------------------------------ unsigned longueurChaine(const char* chaine) { unsigned longueur; for (longueur = 0; chaine[longueur] != '\0'; longueur++); return longueur; } //------------------------------------------------------------------------------ void insertionChaine(char *chaine, const char *insertion, unsigned position) { unsigned nombre = longueurChaine(insertion); unsigned longueur = longueurChaine(chaine); //....... Décalage des caractères de la première chaîne ...................... for (int i = 0; i<=longueur-position; i++) chaine[longueur+nombre-i] = chaine[longueur-i]; //....... Insertion des caractères de la deuxième chaîne ..................... for (int i = 0; i<nombre; i++) chaine[position+i] = insertion[i]; } //------------------------------------------------------------------------------ int main( ) { char chaine[70], insertion[35]; unsigned position, nombre; cout << "Insertion d'un chaîne dans une autre" << endl; cout << "-------------------------------------" << endl; cout << "Première chaîne : "; cin >> chaine; cout << "Deuxième chaîne : "; cin >> insertion; cout << "Position ? "; cin >> position; insertionChaine(chaine, insertion, position); cout << "Résultat : " << chaine << endl; return 0; } //------------------------------------------------------------------------------