请问这个程序怎么编写

写一个函数,把两个字符串连接起来(不用strcat函数),并测试该函数是否正确

#include<iostream>
using namespace std;
int main(){
    char a[100],b[50];
    void Strcat(char a[],char b[]);
    cout<<"请输入第一个字符串:"<<endl;
    cin>>a;
    cout<<"请输入第二个字符串:"<<endl;
    cin>>b;
    Strcat(a,b);
    cout<<"组合后的字符串: "<<a;
    cout<<endl;
    return 0;
}
void Strcat(char a[],char b[]){
    int i,j;
    for(i=0;a[i]!='\0';i++);
    cout<<"第一个字符串的长度:"<<i<<endl;
    for(j=0;b[j]!='\0';j++,i++){
        a[i]=b[j];
    }
    cout<<"第二个字符串的长度:"<<j<<endl;
}



#include <iostream>
#include<string>
using namespace std;
int main() {
    string str, str1, str2;
    cin >> str1 >> str2;
    str = str1 + str2;
    cout << str << endl;
    return 0;
}


img