函数

时间:2016-02-12 15:22:50

标签: c function return

我最近开始学习C并且发现了这个功能。

int is_prime(int n) {

    int d;

    for (d = 2; d * d <= n; d++)
        if (n % d == 0)
            return 0;

    return n >= 2;
}

虽然我理解它的一般目的和功能(它检查参数是否是素数),但我不明白这行是什么

return n >= 2;

完全正确。 它只返回n,只有它是>= 2吗?如果n是&lt;将会发生什么? 2? 有人会这么善意解释吗?谢谢:))

2 个答案:

答案 0 :(得分:6)

返回表达式n >= 2;的值。

现在,由于表达式涉及比较运算符,因此它可以计算为0,这意味着 False ,或1,这意味着 True

您可以从之前的return声明中了解相关信息。 return 0,返回0,实际上意味着 False

注意: C没有 True False 的任何概念。在C True 由任何不等于0的数值表示, False 由0表示。

答案 1 :(得分:1)

与存在表达式的所有其他位置一样,它会计算表达式,并且对于函数的结果,它将返回值。'

n >= 2
如果n为2,3,4,则

为真,如果n为1,0,-1,-2,则为假,