#include<stdio.h>
#define LSIZE 81
void strInsert(char str1[],int pos,char str2[]);
void strDelete(char str1[],int iBegin,int iLen);
int main()
{
char str1[LSIZE] = "Welcome Beijing!";
char str2[]="to ";
int iBegin,iLen;
int len;
int pos = 8;
iBegin = 5;
iLen = 6;
printf("string1 is %s\n",str1);
strInsert(str1,pos,str2);
printf("\nafter inserting str2 at position %d\n",pos);
printf("string1 is %s\n",str1);
strDelete(str1,iBegin,iLen);
printf("\nafter deleting %d char from position %d\n",iLen,iBegin);
printf("string1 is %s\n",str1);
return 0;
}
void strDelete(char str[],int iBegin,int iLen)
{
int i;
int len=0;
while(str[len]) len++;
if(len>iBegin+iLen)
for(i=iBegin;i<=len-iLen;i++)
str[i] = str[i + iLen];
else
str[iBegin]='\0';
}
void strInsert(char str1[],int pos,char str2[])
{
char *s;
int i,i1=0,i2=0;
while(str2[i2]) i2++;
while(str1[i1]) i1++;
for(i=i1;i>=pos;i--)
str1[i+i2] = str1[i];
for(i=0;i<i2;i++)
str1[pos+i]=str2[i];
}