当用户输入3时,我希望程序退出,但控制台表示按任意键继续,然后在用户按任意键后退出。这是我对案例3的看法。整个switch语句也包含在do while语句中。当应用程序退出时,控制台应用程序显示'按任意键继续'
do {
.
.
.
case 3:
Environment.Exit(0);
break;
} while (!isValid);
当用户输入3时,我希望程序退出,但控制台表示按任意键继续,然后在用户按任意键后退出。这是我对案例3的看法。整个switch语句也包含在do while语句中。当应用程序退出时,控制台应用程序显示'按任意键继续'
do {
.
.
.
case 3:
Environment.Exit(0);
break;
} while (!isValid);
当你用ctrl + f5启动应用程序(启动时没有调试)时,消息来自visual studio。所以,应用程序确实终止。只有视觉工作室要求您按下按键,以便您有机会看到您的控制台输出。
从Visual Studio外部运行应用程序时,不会显示消息。在使用f5启动调试版本时,它也不会出现(调试控制台应用程序时,控制台输出在visual studio输出日志中可见,因此在应用程序终止后不需要保持控制台窗口打开状态)。
哦,哇,我觉得这么愚蠢啊哈。感谢您为我解决困惑。 – Jacob
您应该创建一个返回bool并使用它的方法,您可以从循环中退出。
bool bTry=true;
While(bTry)
{
..Your..
..Other..
..Code..
..
bTry=CanCountinue();
}
/// <summary>
/// Used to continue
/// </summary>
/// <returns>True if user want to continue
/// False if user want to exit</returns>
public bool CanCountinue()
{
Console.WriteLine("Enter Y to continue...");
String sAnother = Console.ReadLine();
return String.Compare(sAnother, "Y", true) ==0;
}
'Application.Exit()'? –
试图说“名称'应用程序'不存在于当前上下文中' – Jacob
并导入命名空间? –