C++大数加法(字符串加法)

string add(string a,string b)
{
    string ret="";
    reverse(a.begin(),a.end());
    reverse(b.begin(),b.end());
    int lena=a.size();
    int lenb=b.size();
    int i=0,j=0;
    int c=0;
    while(i0)
    {
        ret+="1";
    }
    reverse(ret.begin(),ret.end());
    return ret;
}

上来先将两个字符串都翻转,表示从低位开始加一直加到最高位,c为进位。

两个字符串有长有短,短的到头了长的可以继续加。

最后进位如果大于0,就让ret再加个"1"。

翻转以后再返回。

欢迎大家关注/订阅我的微信公众号Code Art Online,我会在我的公众号分享个人见闻,发现生活趣味;这里不仅有0和1,还有是诗和远方↓↓↓

你可能感兴趣的:(C++大数加法(字符串加法))