我写一个C#的console程序,需要在某条消息报错后,程序运行到此为止,也就是说不会继续往下执行。我一开始用的是return,但是发现return只是跳出当前的函数,如果我不是在main函数里面写return的话,就无法终止整个程序,请问有什么命令是可以达到我要得效果?

解决方案 »

  1.   

    我再补充下,实际上是这样的:
    我要对运行main函数的输入参数进行判断,如果有效,就继续执行,如果参数有问题,就要重新输入有效的参数后才能执行下去。static void Main(string[] args)
    {
         ParaCheck(args[0], args[1], args.Length};
    }我现在想知道的是,如果ParaCheck函数里面判断条件不满足,我怎么中止执行,然后重新输入参数后再运行。
      

  2.   

    或者让ParaCheck返回false(或者throw exception), 在Main中进行判断(或catch exception)再return
      

  3.   

    Console.ReadKey();
    运行完就停止……
      

  4.   

    建议使用while(true){  
    //满足条件break
    }
    这种判断~
      

  5.   

    static void Main(string[] args)
    {
      bool b = ParaCheck(args);
      if(!b) return;  // 做其他事情...
    }private static bool ParaCheck(string[] args)
    {
      if(args.Length >= 2)
      {
        //  开始判断args[0],args[1]内容...
      }
      else
      {
        return false;
      }
    }
      

  6.   

    你要让他循环执行,当然要用while,而在想要终止执行的条件下抛出一个异常,并捕获
      

  7.   

    如果是等待用户输入参数并且判断参数是否正确
    while循环,只有当正确时才执行下一程序块,不满足条件就提示参数不正确,让用户输入正确参数即可
    如果你在Main()中调用其它方法,并且在其它方法中做终止,而且还可以让用户继续使用您的系统
    就不能用exit之类的,用了都结束了,用户只能从新打开
    当然Applaction这个不会立即退出,并且还有方法可以重新启动,但这并不是解决楼主的问题,所以不建议这样使用参数传入方法这种情况,我们应该把参数验证放在最前面,而不是当参数传入方法在做验证,如果一个无意义的参数传入更多方法后发现错误这岂不让人心寒,如果实在传入方法后发现有问题可以通过向上抛出异常在上层方法中用catch捕获,然后做处理