La programación en lenguaje C utiliza punteros para escribir funciones: insert(s1,s2,f). Su función es insertar la cadena s2 en la posición especificada f en la cadena s1.
#include
int?insert(char?*s1,?char?*s2,?int?f)
{
char?*cp,?*tcp;
tcp?=?s1?+?strlen(s1);
cp?=?s1?+? f;
if(tcp?
return?-1;
mientras(tcp?>=?cp)
{
*(tcp?+?strlen(s2))?=?*tcp;
tcp--;
}
mientras(*s2?=?'\0')
{
*cp?=?*s2;
cp++;
p>s2++;
}
return?0;
}
int?main(void) p >
{
char?str1[128];
char?str2[128];
int?f;
gets(str1);
gets(str2);
scanf("%d",?&f);
insert(str1,?str2 , ?f);
puts(str1);
return?0;
}