变量值未分配给C中的另一个变量

问题描述 投票:-2回答:2

我正在上一堂课学习C。我已经获得了将用户输入的值设置为num的代码,但是当我尝试为另一个变量(placeHolder1)分配num的值并返回该新变量时,我被赋予了一堆随机数。不完全确定为什么新变量不接收num持有的内容。

long get_num(string prompt);

int main(void)
{
    long n = get_num("Number: ");      //prompts user for input
    printf("%li\n",n);
}

long get_num(string prompt)
{
    long num;

    num = get_long("%s", prompt);   //assigns num to the value of what user input

    checksum(num);
    return placeHolder1;
}

long checksum(num)
{
    long placeHolder1 = num;
}
c variables
2个回答
1
投票

似乎您在使用可变范围。]概念时遇到困难

在此代码中

long checksum(num)
{
    long placeHolder1 = num;
}

placeHolder1仅在函数执行期间存在。一旦执行离开该函数,placeHolder1将超出范围并有效消失。


0
投票

您可能需要做类似的事情:

© www.soinside.com 2019 - 2024. All rights reserved.