【问题标题】:How to call a value from a loop in a function?如何从函数的循环中调用一个值?
【发布时间】:2016-05-16 22:56:27
【问题描述】:

只需要一些关于调用函数的教程。我在其中使用了一个循环,但我没有被教过函数/函数调用的整体结构。任何基本的指导都会很棒!!

【问题讨论】:

    标签: c function loops call


    【解决方案1】:

    您似乎对局部/全局变量的范围有些困惑。您在main() 函数中声明的i 与在find_div() 函数中声明的i 不同。是时候阅读有关local variablesglobal variablesvariable shadowing 的信息了。有了这些知识,我希望你能解决你的问题。如果您有任何疑问,请回复我,但您必须证明您至少尝试过。

    编辑:考虑下面的代码 sn-p:

    int find_div(int num) {
        int i;
    
        for (i = 2; i <= (num/2); i++) {
            if (num % i == 0) {
                return 1;
            }
            if (num == i) {
                return 0;   //This line never executes.
            }
        }
        return i; //Think what this does to your program.
    }
    

    阅读sn-p中的评论。存在逻辑错误。

    【讨论】:

    • 很好地展示了问题的根源并链接到文章以供进一步阅读。非常感谢让 OP 为它工作。但是,您可能至少应该暗示一个解决方案。在这种情况下,知道问题的原因无助于解决问题。他现在必须从函数中“返回”两个值。
    • 如果他决定声明一个全局变量,他不需要“返回”2个值。不推荐,但它适用于这个特定的程序。
    猜你喜欢
    • 2013-01-26
    • 2017-11-10
    • 2022-01-20
    • 1970-01-01
    • 2020-03-13
    • 1970-01-01
    • 2023-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多