我在 OS X 10.7.5 上的 Xamarin Studio 中处理 ac# 控制台应用程序时发现了一个奇怪的错误。如果我在循环的一次迭代中更改背景颜色,如果在此之前还有另一个循环,颜色有时会跳下。例如:
for (int i = 0; i < 18; i++) {
Console.WriteLine (i);
}
for (int i = 0; i < 8; i++) {
if (i == 5) {
Console.BackgroundColor = ConsoleColor.Green;
Console.WriteLine ("green");
Console.ResetColor ();
} else {
Console.WriteLine (i);
}
}
如果您运行该代码,绿色背景将跳下一行。但是,如果您将第一个循环更改为运行 17 次(或更少)而不是 18 次,则不会再发生这种情况。我猜这可能与终端窗口有关,您可能无法复制它,所以这是我得到的截图:http: //i.imgur.com/2WeaZ4k.png
有谁知道为什么会这样跳线以及如何防止它?谢谢!