没有获得所需的输出

时间:2016-08-06 14:06:12

标签: c# command-line-arguments

我刚刚开始进行一些基本的C#练习。我是指以下链接中的示例

https://msdn.microsoft.com/en-us/library/aa288457(v=vs.71).aspx

以下是代码

// cmdline2.cs
// arguments: John Paul Mary
using System;

public class CommandLine2
{
    public static void Main(string[] args)
    {
        Console.WriteLine("Number of command line parameters = {0}",
       args.Length);
        Console.ReadLine();
        foreach (string s in args)
        {
            Console.WriteLine(s);
        }
    }
}

以下是预期结果。

使用以下一些参数运行程序: cmdline2 John Paul Mary。

输出将是:

  

命令行参数数量= 3
   约翰
   保罗
   玛丽

然而,在我的情况下,当我尝试执行代码时,命令行出现了一秒钟并且消失了。

我添加了console.read(),我在下面看到。

命令行参数数量= 0

所以我想了解这里出了什么问题。任何帮助表示赞赏。

此致 阿努拉格

2 个答案:

答案 0 :(得分:0)

您必须在最后添加readline 才能暂停执行,否则程序只会运行,并退出...

// cmdline2.cs
// arguments: John Paul Mary
using System;

public class CommandLine2
{
   public static void Main(string[] args)
   {
       Console.WriteLine(
         "Number of command line parameters = {0}",
          args.Length);
       foreach (string s in args) Console.WriteLine(s);

       Console.WriteLine("Hit any key to exit");
       Console.ReadLine();
   }
}

另外,要从Visual Studio运行,请从项目的属性页面添加命令行参数:

enter image description here

答案 1 :(得分:0)

args是传递给可执行文件的命令的数组。

您没有显示的是您在命令行参数中传递的内容。这可以通过两种方式完成:

  1. 通过从命令行调用exe,例如ping www.google.com -t使用2个参数调用ping.exe。
  2. 在您的示例中,您可以拨打commandLine2.exe 3 John Paul Mary

    1. 调试您可以使用以下命令来执行特定命令:
    2. enter image description here

      在“开始”选项中,您需要添加命令行参数。

      然后您应该看到正确数量的参数。

      最后一项是你的readline在Console.WriteLine()之前。将您的读取移动到代码的末尾,在Main方法内。