C++ int 赋值不起作用

C++ int assignment not working

本文关键字:不起作用 赋值 int C++      更新时间:2023-10-16

我的代码有问题。它符合要求,但我的 int 周和 int 天没有正确更新,并返回到最初分配它们的值 0。我是一个非常新手的程序员,这段代码只是我正在尝试编写的另一个代码的片段。感谢您的任何和所有帮助?编辑:另外,我不得不通过重写basic_order int来返回几天,这是超级低效的,但我不知道如何以其他方式做到这一点。

这是我的代码。

#include <iostream>
using namespace std;
int BasicMakespan(int &basic_order)
{
    int shirts_left, days, weeks;
    days = 0;
    weeks = 0;
    shirts_left = basic_order - 1000;
    while (shirts_left >= 0)
    {
        shirts_left = shirts_left - 1000;
        days = days + 1;
        if (days == 6)
        {
            days = 0;
            weeks = weeks + 1;
        }
    }
    basic_order = weeks;
    return days;
}
int main ()
{
    int basic_order;
    cin >> basic_order;
    BasicMakespan ( basic_order );
    cout << BasicMakespan << " " << basic_order << endl;
}

也许你打算写这个:

int main ()
{
    int basic_order;
    cin >> basic_order;
    int result = BasicMakespan ( basic_order );
    cout << result << " " << basic_order << endl;
}

?因为您的代码当前正在打印BasicMakespan的地址,而不是它返回的结果。