# 415.Add Strings

**415.Add Strings**

难度:Easy

> 给定两个字符串形式的非负整数 num1 和num2 ，计算它们的和。

注意：

```
num1 和num2 的长度都小于 5100.
num1 和num2 都只包含数字 0-9.
num1 和num2 都不包含任何前导零。
你不能使用任何內建 BigInteger 库， 也不能直接将输入的字符串转换为整数形式。
```

字符串相加，从最低位开始相加，留一个flag表示进位。

```
class Solution {
public:
    string addStrings(string num1, string num2) {
        num1= '0'+num1;
        num2='0'+num2;
        while(num1.length()>num2.length())
            num2 = '0'+num2;
        while(num2.length()>num1.length())
            num1 = '0'+num1;
        int flag=0;
        string res;
        for(int i=num1.size()-1; i>0;i--)    
        {
            int tmp=(num1[i]-'0' ) +(num2[i] - '0')+flag;
            if(tmp>=10)
            {
                flag=1;
                tmp-=10;
                
            }
            else
                flag=0;
            res= (char)('0'+tmp) +res;
        }
        if(flag)
            res='1'+res;
        return res;
        
    }
};
```

> 执行用时 :24 ms, 在所有 C++ 提交中击败了24.74%的用户\
> 内存消耗 :74.6 MB, 在所有 C++ 提交中击败了6.03%的用户
