请假关于栈的问题请教

老师给的代码 让这代码 输入信息来实现栈溢出 不太懂 想请教大佬 给讲讲

#include <iostream>
#include <iomanip>

void Hack()
{
    unsigned long long x = 0;
    for (int i = 0; true; i++)
    {
        if (i % 100000000 == 0)
        {
            system("cls");
            std::cout << "\n■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n";
            std::cout << "\n 你的系统已经被我们拿下! hacked by \n";

            std::cout << "\n\\>正在传输硬盘数据....已经传输" << x++ << "个文件......\n\n";

            std::cout << std::setfill('>')<< std::setw(x % 60) << "\n";

            std::cout << "\n\\>摄像头已启动!<==============\n\n";

            std::cout << std::setfill('#') << std::setw(x % 60) << "\n";

            std::cout << "\n\\>数据传输完成后将启动自毁程序!CPU将会温度提升到200摄氏度\n";

            std::cout << "\n■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n";
        }
    }
}

int GetAge()
{
    int rt;
    std::cout << "请输入学员的年龄:";
    std::cin >> rt;
    return rt;
}

int count()
{
    int i{};
    int total{};
    int age[10]{};
    do
    {
        age[i] = GetAge();
        total += age[i];
        //将AGE[I]保存到数据库中
    } while (age[i++]);
    return total;
}

int main()
{
    std::cout << "======= 学员总年龄统计计算系统 =====\n";
    std::cout << "\n                API:"<<Hack<<std::endl;
    std::cout << "\n[说明:最多输入10个学员的信息,当输入0时代表输入结束]\n\n";
    std::cout << "\n学员总年龄为:" << count();
}


 

参考GPT和自己的思路:

这段代码的意图是让用户输入多个学员的年龄,如果输入0则代表输入结束,然后计算出学员的总年龄并输出。但是在这段代码中,调用了一个名为 "Hack" 的函数,在该函数中有一个无限循环,并且每次循环中都会调用系统命令清空屏幕并输出一些恶意信息,这很明显是一个恶意代码。如果用户输入了很多个年龄(超过了栈的大小限制),那么就可能会导致栈溢出的错误,从而使该恶意功能得以实现。因此,如果您看到类似的代码,不要轻易运行或尝试修改,保持警惕并谨慎处理。