1局部变量
在方法、循环、条件语句等代码块内声明的变量是局部变量,它们只在声明它们的代码块中可见。
方法//函数下面的定义对于类属于局部变量
实例
//错误使用变量作用域
for (int i = 0; i < n; i++)
{
int sum = 0; //现在的sum是局部变量
sum += i;
Console.WriteLine(sum);
}
//每次循环都会定义一个sum=0
//每次循环都会打印一个sum
//正确使用变量作用域
int sum = 0; //现在的sum是全部变量
for (int i = 0; i < n; i++)
{
sum += i;
}
Console.WriteLine(sum);
//循环结束后才打印sum
2全局变量
在类的成员级别定义的变量是成员变量,它们在整个类中可见,如果在命名空间级别定义,那么它们在整个命名空间中可见。
类下面的定义对方法属于全局变量
实例
public partial class Practices
{
int sum = 0; //sum对于for循环里面的sum属于全局变量
public void Ex17()
{
int n = Convert.ToInt32(Console.ReadLine());
//错误的for循环
for (int i = 0; i < n; i++)
{
int sum1 = 0; //这里的sum1属于局部变量
sum1 += i;
Console.WriteLine(sum1);
}
//这里的sum2对于下面的for循环属于全局变量,对于Ex17方法属于局部变量
int sum2 = 0;
//正确的for循环
for (int i = 0; i <= n; i++)
{
sum2 += i;
}
Console.WriteLine(sum);
}
3循环变量作用域
在 for 循环中声明的循环变量在循环体内可见
。
实例
for (int i = 0; i < 5; i++)
{
// i 在循环体内可见
}
// i 在这里不可见