微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C语言如何在另一个函数中使用局部变量未声明的标识符作用域规则

如何解决C语言如何在另一个函数中使用局部变量未声明的标识符作用域规则

我正在学习 C 语言编程,但我遇到的问题是,当它编译时,它在“while (k

#include <stdio.h>

int get_start_size(void);
int get_end_size(void);

int main(void)

{
    // Prompt for start size

    int i = get_start_size();

    // Prompt for end size
    
    int j = get_end_size();
}
    
int get_start_size(void)
{
    int n;
    do
    {
        n = get_int("Start size: ");
    }
    while (n < 9);
    return n;
}
int get_end_size(void)
{
    int k;
    do
    {
        k = get_int("End size: ");
    }
    while (k < n);
    return k;
}

解决方法

您应该传递要用作参数的值。

#include <cs50.h>
#include <stdio.h>

int get_start_size(void);
int get_end_size(int limit); // add parameter

int main(void)

{
    // Prompt for start size

    int i = get_start_size();

    // Prompt for end size
    
    int j = get_end_size(i); // pass parameter
}
    
int get_start_size(void)
{
    int n;
    do
    {
        n = get_int("Start size: ");
    }
    while (n < 9);
    return n;
}
int get_end_size(int limit) // add parameter
{
    int k;
    do
    {
        k = get_int("End size: ");
    }
    while (k < limit); // use the parameter
    return k;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。