错误:在此范围内未声明'n'

时间:2018-02-05 06:31:11

标签: c++ function compiler-errors

我写了一个函数来查找数n的除数之和。

int divisor_sum(long n) {
    long sum = 0;
    for (int a=1, a<=n, a++) {
        if n % a == 0 {
            sum = sum + a;
        }
    }
    return sum;
}

不幸的是,该程序(包括一个主函数框架)将无法编译,因为它表示“n'未在此范围内声明。”我已经尝试在函数定义语句之前和之后声明n无效。我该如何解决? 感谢

1 个答案:

答案 0 :(得分:0)

像StoryTeller和O'Neil在评论中告诉你的那样,你需要替换这个

for (int a=1, a<=n, a++)

for (int a = 1; a <= n; a++)

和这个

if n % a == 0

if (n % a == 0)