Main类中的“string [] args”是什么?

时间:2009-02-16 09:52:32

标签: c#

在C#中,Main类有string [] args参数。

它的用途和用途是什么?

9 个答案:

答案 0 :(得分:90)

来自C# programming guide on MSDN

Main方法的参数是一个表示命令行参数的String数组

所以,如果我有一个这样的程序(MyApp.exe):

class Program
{
  static void Main(string[] args)
  {
    foreach (var arg in args)
    {
      Console.WriteLine(arg);
    }
  }
}

我从命令行开始这样:

MyApp.exe Arg1 Arg2 Arg3

Main方法将传递一个包含三个字符串的数组:“Arg1”,“Arg2”,“Arg3”。

如果需要传递包含空格的参数,请将其用引号括起来。例如:

MyApp.exe "Arg 1" "Arg 2" "Arg 3"

当您需要在运行时将信息传递给应用程序时,通常会使用命令行参数。例如,如果您正在编写将文件从一个位置复制到另一个位置的程序,则可能会将这两个位置作为命令行参数传递。例如:

Copy.exe C:\file1.txt C:\file2.txt

答案 1 :(得分:18)

除了其他人的答案外,您应该注意,如果您的应用程序不使用命令行参数,那么参数在C#中是可选的。

此代码完全有效:

internal static Program
{
    private static void Main()
    {
        // Get on with it, without any arguments...
    }
}

答案 2 :(得分:10)

用于传入命令行参数。例如,args[0]将为您提供第一个命令行参数(如果有)。

答案 3 :(得分:2)

除了其他答案。您应该注意到这些args可以为您提供在.exe文件上拖放的文件路径。 即如果您拖放.exe文件上的任何文件,则应用程序将启动,arg[0]将包含放在其上的文件路径。

class Program
{
   static void Main(string[] args)
   {
       Console.WriteLine(args[0]);
    }
}

这将打印放在.exe文件上的文件的路径。例如

  

C:\ Users \ abc \ Documents \ Visual Studio \ Projects \ MyTestApp \ MyTestApp \ bin \ MyTestApp.exe

答案 4 :(得分:0)

您必须看到一些从命令行运行的应用程序,并允许您传递它们的参数。如果您在C#中编写一个这样的应用程序,则数组args将作为所述参数的集合。

这是你如何处理它们的:

static void Main(string[] args) {
    foreach (string arg in args) {
       //Do something with each argument
    }
}

答案 5 :(得分:0)

这是命令行开关传递给程序的数组。例如。如果您使用“myapp.exe -c -d”命令启动程序,则string[] args[]将包含字符串“-c”和“-d”。

答案 6 :(得分:0)

args参数存储运行程序时用户提供的所有命令行参数。

如果您从控制台运行程序,请执行以下操作:

  

program.exe有4个参数

你的args参数将包含四个字符串:“there”,“are”,“4”和“parameters”

以下是如何从args参数访问命令行参数的示例:example

答案 7 :(得分:0)

这是您发送到程序的参数/参数(因此为args)的数组。例如ping 172.16.0.1 -t -4

这些参数作为字符串数组传递给程序。

string[] args //包含参数的字符串数组。

答案 8 :(得分:-1)

如果您要从命令行运行应用程序,那就是这样。这些参数可以在args数组中访问。有关详细信息,请转到http://www.c-sharpcorner.com/UploadFile/mahesh/CmdLineArgs03212006232449PM/CmdLineArgs.aspx