与运营商'<<'不匹配有人可以帮助解决无效功能错误吗? [C ++]

时间:2016-03-10 03:36:35

标签: c++ function return-value void

This帖子处理同样的错误,但海报没有处理无效功能。

This帖子关注“void”类型的函数,但建议海报将函数类型更改为“string”,这对我的情况没有帮助。

我的代码执行正常,但输出结尾的文字“0”除外。当我将函数类型更改为“void”时,我遇到了上述错误。

我已多次浏览本教程,并已彻底搜索,但无法解决此问题。

//my code
#include <iostream>
using namespace std;

int intervalcountdown (int a, int b) {
    for(a; a>0; a = a - b) {

        cout << a;

        if(a<=b) {

        break;
        }

        cout << ",";


    }
    cout << ".";
    return 0;
}


int main () {
    cout << intervalcountdown(20,3);
    return 0;
}

1 个答案:

答案 0 :(得分:0)

只是不要打印你不想要的东西。

#include <iostream>
using namespace std;

void intervalcountdown (int a, int b) { // change return type to void
    for(; a>0; a = a - b) { // meaningless a is removed

        cout << a;

        if(a<=b) {

            break;
        }

        cout << ",";


    }
    cout << ".";
    // remove the return statement because the return type is now void
}


int main () {
    intervalcountdown(20,3); // remove extra printing
    return 0;
}