求dalao帮调

[Error] conversion from 'void' to non-scalar type 'std::string {aka std::basic_string<char>}' requested
翻译:[错误] 请求从“void”转换为非标量类型“std::string {aka std::basic_string<char>}”
本地编译出错,P1609
代码:
#include<bits/stdc++.h>
using namespace std;
int a[110];
int main(){
string s1;
cin>>s1;
while(1){
for(int i=0;i<s1.size();i++)a[i]=s1[s1.size()-i-1]-'0';
a[0]++;
for(int i=0;i<s1.size();i++){
if(a[i]>=10){
a[i+1]+=a[i]/10;
a[i]%=10;
}
}
int t=s1.size();
string s2;
if(a[s1.size()+1]!=0)t++;
for(int i=0;i<t;i++)s2[i]=a[i]+48;
string str=reverse(s2.begin(),s2.begin()+s2.size()+1);
s1=str;
if(s2==str){
cout<<s1;
return 0;
}
memset(a,0,sizeof(a));
}
return 0;
}