cambia el 5
cin.getline(str1, 5,'\n');
por el numero que creas conveniente idem
in.getline(str2, 5, '\n');
lo mismo en el vector
char str1[5], str2[5];
=====
una opcion es usar string que son por decirlo asi vectores dinamicos donde la longitud la pone el usuario
no lo probe pero deberia ser mas o menos
#include<iostrem>
#35include<string>[
using manespace std,
int main()
{
string frase;
getline(cin, frase );
cout<<"la frase es " <<frase<<endl;
return 0;
}