c#中递增值的问题
本文关键字:问题 | 更新日期: 2023-09-27 18:05:22
我目前正在尝试获得一个每次运行时增加一个的数字,我使用while循环,所以理论上每次循环在下面的代码中运行时,int I应该返回1,2,3,4等。尽管它返回的是1,1,1,1,1,1。我就是想不明白这是怎么回事。
public static void getresponse(ref int i)
{
i++;
System.Console.WriteLine(i);
}
你是在重新声明i,并在每次循环运行时将其设置为0。
将int i = 0
移出while循环。
int i = 0;
while (true)
{
getresponse(ref i);
}
在while循环外声明。每次都设置为0。
static void Main(string[] args)
{
int i = 0;
while (true)
{
getresponse(ref i);
}
}
public static void getresponse(ref int i)
{
i++;
System.Console.WriteLine(i);
}
您注意到每次迭代都将I重置为0吗?
只要在while语句块外声明I就可以了
将计数器置于循环之外。
static void Main(string[] args)
{
int i = 0;
while (true)
{
getresponse(ref i);
}
}
public static void getresponse(ref int i)
{
i++;
System.Console.WriteLine(i);
}