定义与变量的存在

时间:2014-09-03 01:32:08

标签: c computer-science

我在一个入门编程课程中,我们的教授真的已经开始讨论变量。我在教科书和本网站上阅读的很多信息都很难理解,我知之甚少。这是他给我们的示例代码片段之一:

    void
    printHi(char *name)
        {
        int count = 3;
        printf("Hi There, %s-%d\n",name,count);
        return;
        }

我们需要能够从片段中识别出哪些变量已定义且哪些变量存在。根据我所知,我的理解是整数 count 既存在又定义,而字符串 name 仅存在,未定义。这是正确的,还是我在这里错过了标记?

我真的很想在这里提出这么多带有相同标题的问题,但即使在读完其他问题之后,我仍然不能完全确定。谢谢!

3 个答案:

答案 0 :(得分:1)

char *name称为参数。它被传递给名为printHi的函数。就像在数学中说f(x)= 2x + 3时,x是一个参数。

int count = 3;是下一个变量,它被称为局部变量,因为它在函数中定义,当函数返回变量时,变量不再可用。

答案 1 :(得分:1)

"本"不是标准术语。 name由参数列表中的char *name定义。

每个变量都在某处定义。通过" present"很难知道他的意思,但如果他的意思是"在这个代码中使用了#34;然后你可以说namecount都被定义并存在。

答案 2 :(得分:0)

name实际上是在printHi()函数中定义的, 当另一个函数调用printHi()函数时,它将字符串的VALUE传递给printHi(),并将其接收并存储在name变量中。要存储接收到的字符串printHi()函数,会生成一个名为' name'的字符串。和store3s吧。