参考@Senjie这位老哥的,感谢!!!
代码十分简洁,感觉还不戳特此分享!!!

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s1,s2;
    while(cin>>s1>>s2)
    {
        int c=0;//进位
        string result;//最后结果
        reverse(s1.begin(),s1.end());//调转s1
        reverse(s2.begin(),s2.end());//调转s2
        if(s1.length()<s2.length()) swap(s1,s2);//s1始终为最长
        for(int i=0;i<s1.length();i++)
        {
            i<s2.length() ? c+=s1[i]-'0'+s2[i]-'0':c+=s1[i]-'0';//对应位以及进位相加
            result+=c%10+'0';//该位所得结果,拼接字符串
            c/=10;//进位判断
        }
        if(c==1)
            result+='1';//最终进位判断
        reverse(result.begin(),result.end());//调转后的结果
        cout<<result<<endl;
    }
}