Supongamos que quiero hacer una función que concatene dos cadenas de caracteres, un strcat "personalizado". La definición de la función la haría así:
Código:
void mi_strcat(char *s_dest, char *s_orig)
Pero veo que la función de string.h está definida de la siguiente forma:
Código:
char *strcat(char*s1, const char *s2)
Entonces, me gustaría saber cuál es la diferencia, ya que no entiendo por qué se especifica como retorno char si no "devuelve" (con la sentencia return) nada. Supongo que será por esclarecer el código, pero no estoy seguro, ya que a efectos prácticos no hay diferencia.
Saludos.