415. 字符串相加

415. 字符串相加

cpp 复制代码
class Solution 
{
public:
    string addStrings(string num1, string num2)
    {
        //i j分别指向当前字符串的最后一位
        int i = num1.length() - 1;
        int j = num2.length() - 1;
        int add = 0;
        string s = "";
        //不要忽略两个串都遍历完了 但是还有一个进位
        while (i >= 0 || j >= 0 || add != 0) 
        {
            //只要还没遍历完 当前字符变数字
            int x = i >= 0 ? num1[i] - '0' : 0;
            int y = j >= 0 ? num2[j] - '0' : 0;
            int result = x + y + add;
            //计算进位
            add = result / 10;
            //当前位数字变字符 尾插进s 
            s.push_back('0' + result % 10);
            //i j前移
            i -= 1;
            j -= 1;
        }
        reverse(s.begin(), s.end());
        return s;
    }
};
相关推荐
fpcc5 小时前
c++编程实践—堆和栈越界调试
c++
weiabc6 小时前
MSYS2 UCRT64 + g++ C++ 中文输出乱码 完整全过程
c++
灯澜忆梦7 小时前
【面向对象编程C++】| 基础语法
java·c++·算法
aqiu1111118 小时前
【C++算法打怪专栏】LeetCode 165. 比较版本号(双指针与字符串流法)
c++·算法·leetcode
chenbingjie_c9 小时前
C++ STL 适配器:stack & queue,从 vector/list 到 deque 深度解析
数据结构·c++
hetao173383712 小时前
2026-10-08 hetao1733837 的刷题记录
c++·算法
Frank_refuel13 小时前
【C++】智能指针
开发语言·c++
一只旭宝14 小时前
数据结构与算法复习手册:从写过,到讲清楚
开发语言·数据结构·c++·算法
十五年专注C++开发14 小时前
std::filesystem::exists 在有的win10系统抛异常原因分析
c++·文件系统·filesystem
hetao173383715 小时前
2026-10-07 hetao1733837 的刷题记录
c++·算法