Originariamente inviato da ramy89
La mia idea è di usare una variabile statica che rappresenta la stringa che alla fine andrà restituita,questa stringa all' inizio sarà vuota,poi man mano che scandisci le stringhe se ne trovi uno nuovo lo allochi,fai il controllo carattere per carattere,alla fine del controllo se la stringa non è finita (guardi se c'è il terminatore) passi alla stessa funzione il carattere successivo.Poi se e solo se entrambe le due stringhe sono finite ritorni l' array di char,statico e che viene allocato di un carattere in più solo se il carattere non è già presente.
Spero che è chiaro,prova a farla semmai se è sbagliata ci diamo un' occhiata.
Interessante sai?
Per comodità, la stringa risultato si potrebbe già allocare della somma delle lunghezze delle altre due (ossia il caso peggiore in cui le due stinghe contegano caratteri tutti diversi)...
Il problema è stabilire i casi banali di terminazione dell'algoritmo... Cioè, se una delle due stringhe termina prima dell'altra come bisogna comportarsi?