我刚开始做一些基本的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);
}
}
}
以下是预期结果。
使用以下参数运行程序:cmdline2John Paul Mary。
输出将是:
命令行参数数=3br>johnbr>paulbr>Mary
然而,在我的例子中,首先当我尝试执行代码时,命令行出现了一秒钟,然后消失了。
我添加了console.read(),我正在查看下面的内容。
命令行参数数=0
所以我想知道这里出了什么问题。感谢任何帮助。
阿努拉格致意
args是传递到可执行文件中的命令的数组。
您没有显示的是在哪里传入命令行参数。这可以通过两种方式实现:
在您的示例中,您将调用
在Start选项中,您需要添加命令行参数。
然后您应该会看到正确数量的参数。
最后一项是您的读行位于console.writeLine()之前。将读取移动到代码的末尾,Main方法的内部。
您必须在末尾添加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运行此程序,请从项目的“属性”页添加命令行参数: