#include #include #include enum {MAXCAR = 11}; char * AlloueEtConcat(char *, char*); void main() { char prenom[MAXCAR],nom[MAXCAR]; char * prenom_nom; printf("Donnez le prénom (au plus %d caractères) : ",MAXCAR-1); fgets(prenom,MAXCAR,stdin); if (prenom[strlen(prenom)-1]=='\n') prenom[strlen(prenom)-1]='\0'; fseek(stdin,0,SEEK_END); printf("Donnez le nom (au plus %d caractères) : ",MAXCAR-1); fgets(nom,MAXCAR,stdin); if (nom[strlen(nom)-1]=='\n') nom[strlen(nom)-1]='\0'; prenom_nom=AlloueEtConcat(prenom, nom); puts(prenom_nom); free(prenom_nom); } char * AlloueEtConcat(char * s1, char * s2) { int longueur; char * s3; longueur=strlen(s1) + strlen(s2) + 2; s3=(char *)malloc(longueur*sizeof(char)); if (s3==NULL) { puts("mémoire insuffisante"); exit(1); } else { strcpy(s3,s1); strcat(s3," "); strcat(s3,s2); } return s3; }