Che vuol dire? Come "non funziona"?- Lo "strcpy" non mi funziona. Perchè?
Non devi chiamare la free e la funzione deve restituire il puntatore- Oltretutto come posso poi ritornare l'array dopo aver deallocato la memoria con free a ret?
Posta anche codice di esempio con un main che utilizza la tua funzione.
(ma a che serve il parametro str della funzione? come mai utilizzi prova all'interno della funzione?)

Rispondi quotando