E' più corretto usare strcpy di strcat. In ogni caso dovresti allocare strlen(s)+1 caratteri. Le stringhe sono infatti terminate dal carattere '\0'.
Ad esempio "Ciao" <=> {'C', 'i', 'a', 'o', '\0'} => 5 caratteri