// sous-mot.c
// << Algorithmique du texte >>
// Maxime Crochemore, Christophe Hancart et Thierry Lecroq
// Vuibert, 2001.
#include <stdio.h>
#include "chl.h"
#include "sous-mot.h"
SousMot creerSousMot(Lettre a) {
SousMot sm;
sm = (SousMot)malloc(sizeof(struct _sousMot));
if (sm == NULL) error("creerSousmot");
sm->element = a;
sm->suivant = NULL;
return(sm);
}
SousMot ajouterAuDebutSousMot(SousMot z, Lettre a) {
SousMot sm;
sm = (SousMot)malloc(sizeof(struct _sousMot));
if (sm == NULL) error("ajouterAuDebutSousmot");
sm->element = a;
sm->suivant = z;
return(sm);
}
SousMot concatenerSousMot(SousMot u, SousMot v) {
SousMot z;
if (u == NULL)
return(v);
else {
z = u;
while (z->suivant != NULL)
z = z->suivant;
z->suivant = v;
return(u);
}
}
void ecrireSousMot(SousMot z) {
while (z != NULL) {
printf("%c", z->element);
z = z->suivant;
}
printf("\n");
}