不使用中間變量快速插入字符串

字號(hào):

要求:不采用任何中間變量和庫(kù)函數(shù),將一字符串插入另一字符串的任意指定位置。給出的條件是兩個(gè)字符串的空間均為可讀可寫(xiě),且空間長(zhǎng)度能保證插入字符串后不會(huì)越界!
    代碼如下:
    #include
    //dtr--被插的字符串,str--插入的字符串, locat---插入為置
    void insert(char *dtr, char *str, int locat)
    {
    dtr+=locat;
    locat=0;
    while(*str)
    {
    while(*str)
    {
    *dtr^=*str;
    *str^=*dtr;
    *dtr^=*str;
    str++;
    dtr++;
    locat++;
    }
    str-=locat;
    locat=0;
    }
    }
    int main()
    {
    char str1[100]="1234567890"; //測(cè)試一下
    char str2[]="abcdefg";
    insert(str1,str2,10);
    puts(str1);
    return 0;
    }