哪里错了 [Error] array must be initialized with a brace-enclosed initializer

题目名称:拼接倒序输出字符串
题目描述:将字符串b拼接到字符串a,并倒序输出拼接后的结果。

#include <iostream>

#include <cstring>
using namespace std;
int main(){

string a,b;
a=a+b;
char n[1001]=a;
for(int i=a.strlen();i>=0;i--){
cout<<a[i];
}
return 0;
}

#include <iostream>
#include <string>
#include <iterator>

using namespace std;

int main()
{
    string a, b;
    cin >> a >> b;
    a += b;
    copy(a.rbegin(), a.rend(), ostream_iterator<char>(cout));
    return 0;
}
$ g++ -Wall main.cpp
$ ./a.out
abc 123
321cba