C++问题 运行后提示DAMAGE

代码
#include
#include
using namespace std;
int main()
{
char animal[20]="bear";
const char* bird="wren";
char* ps;
cout< cout cout cin>>animal;
ps=animal;
cout<<ps<<"!"<<endl;
cout<<"Before using strcpy(): "<<endl;
cout<<animal<<" at "<<(int*)animal<<endl;
cout<<ps<<" at "<<(int*)ps<<endl;
ps=new char[strlen(animal+2)];
strcpy(ps,animal);
cout<<"After using strcpy(): "<<endl;
cout<<animal<<" at "<<(int*)animal<<endl;
cout<<ps<<" at "<<(int*)ps<<endl;
delete [] ps;
return 0;
}

ps=new char[strlen(animal+2)]; 这儿有问题吧,应该是 new char(strlen(animal) + 2)