【发布时间】:2021-09-19 12:02:26
【问题描述】:
例如,在下面的代码范围内,局部变量 num 应该只在 else 中,但这是一个不好的做法吗?
typedef enum
{
FIRST,
SECOND,
THIRD,
} numbers;
void fun(int check, numbers *num)
{
if (check)
{
..........
.......
}
else
{
numbers num;
............
}
}
【问题讨论】:
-
这绝对是不必要的混乱和错误行程。为什么要这样做?
-
通常这是不好的做法。唯一的例外是当您传递了一个结构并需要初始化它的成员时。然后,您可以将参数命名为与结构成员相同的名称,因为它们位于不同的命名空间中。
标签: c scope local-variables