#include <iostream>
#include<bits/stdc++.h>
using namespace std;
//定义一个void函数,有三个参数,分别是s1,s2,ch,要在s1里面找到ch,插入s2;
void insert(char s1[],char s2[],char ch)
{
    //定义两个字符指针,分别指向两个字符串;
    char *p=s1;
    char *q=s2;
    //通过遍历找到ch的位置,while循环直到*p==ch结束.
    while(*p++!=ch);//while循环后面有;表示循环体为空,只进行循环不进行操作
    //遍历s2
    while(*s2!='\0')
    {
        q=p;//z将指针p赋值给q,更新ch的位置
        while(*q!='\0') q++;//遍历s2,求出s1+s2的空间
        while(q>=p)//这个其实就是以s2长度为循环条件的
        *(p+1)=*q--;//依次将s2赋值到ch后
        *++q=*s2++;
        p++;
    }
}
int main()
{
    char s1[1000]="abcdefaaaaaf";
    char ch='c';
    char s2[100]="gh";
    char s3[2000];
    insert(s1,s2,ch);
    cout<<s1<<endl;


}