在函数内部使用变量时,要注意外部变量和内部变量的命名是否相同,若相同则需要采取避免重名的方法,例如使用不同的命名方式或加上特定的前缀/后缀等。以下是一个示例:
int x = 1;
void foo()
{
int x = 2;
printf("%d", x); // 输出2
}
void bar()
{
printf("%d", x); // 输出1
}
在上面的代码中,全局变量x的值为1,在函数foo内部又定义了一个同名的变量x并赋值为2。如果要打印foo函数内的x值,则应该使用局部变量x;如果要打印全局变量x的值,则应该使用全局变量x。这就是避免变量屏蔽问题的方法之一。
上一篇:变量屏蔽
下一篇:变量前导零(数字格式化)