通过输入命令行参数来控制程序

今天突然想到类似adb、ffmpeg这样的程序是怎么实现的,通过命令行输入不同的参数就可以执行不同的命令。

研究了一下,其实实现的逻辑很简单,以C#控制台程序为例,Main函数是这样的

    class Program
    {
        static void Main(string[] args)
        {
        }
    }

  

其中string [ ] args便是命令行参数了,简单验证一下,新建一个命令行程序,写入这样一段代码

 class Program
    {
        static void Main(string[] args)
        {
            for (int i = 0; i < args.Length; i++)
            {
                Console.WriteLine(args[i]);
            }
            Console.ReadLine();
        }
    }

  

编译后,在cmd中输入参数

结果打印出了输入的 a b c ,这样我们就可以通过判断条件,来执行不同命令行参数所对应的逻辑了。

using System;

namespace 命令行参数设置程序
{
    class Program
    {
        static void Main(string[] args)
        {
            for (int i = 0; i < args.Length; i++)
            {
                switch (args[i])
                {
                    case "-h":
                        Console.WriteLine("-h: this is help");
                        break;
                    default:
                        Console.WriteLine("error: No such command");
                        break;
                }
            }
            Console.ReadLine();
        }
    }
}

  

原文地址:https://www.cnblogs.com/Jason-c/p/11194025.html

时间: 2024-08-02 09:15:27

通过输入命令行参数来控制程序的相关文章

Eclipse输入命令行参数

想要在Eclipse中输入命令行参数,可以在目录中该程序上右键,选择“Run As",选择”Run configurations",如图: 然后输入命令行参数: 点击Apply和Run,就会将命令行参数传给我们的程序. public static void main(String[] args) { System.out.println(args[0]); System.out.println(args[1]); } 这样就会再控制台上输出:test a 注意,我们只要将"a

c语言中命令行参数argc,argv[ ]

main(int argc,char *argv[ ]) argv为指针的指针 argc为整数 char **argv or: char *argv[] or: char argv[][] main()括号内是固定的写法. 下面给出一个例子来理解这两个参数的用法: 假设程序的名称为prog, 当只输入prog,则由操作系统传来的参数为: argc=1,表示只有一程序名称. argc只有一个元素,argv[0]指向输入的程序路径及名称:./prog 当输入prog para_1,有一个参数,则由操

VS2013 带命令行参数的调试问题 解决方案

首先先解释一下 int main(int argc,char* argv[])的含义 argc是命令行总的参数个数 argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数命令行后面跟的用户输入的参数 比如: int   main(int   argc,   char*   argv[]) { int   i; for   (i   =   0;   i<argc;   i++) cout<<argv[i]<<endl; cin>>i; return 

在Xcode4中给程序提供命令行参数(转)

网上xcode4的资料实在是不多,再加上xcode4相对3的改动还那么大,并且还只有英文版.我为了这个问题头痛了很久.后来终于找到了...方法如下 xcode菜单的Product->EditScheme, 然后应该会弹出一个对话框.在对话框左侧选择Run List.之后可以在右侧选择Arguments选项卡,然后点击Arguments Passed On Launch下面的“+”号, 就可以在里面输入命令行参数了. 下面的是效果演示 代码很简单,就是模板改了几个字而已,输出程序名和第一个参数.

C#命令行参数解析类以及使用实例

http://blog.csdn.net/jackxinxu2100/article/details/6642694 编写命令行程序时如何进行命令行参数解析至关重要,下面将引用codeproject里面的一个命令行参数解析类并阐述如何使用来说明C#命令行参数解析的过程. 先看参数解析类,分为CommandLine类以及CommandArgs类,前者负责解析,后者负责结果封装,解析的结果分为三类:即 a=b 对应的key/value类型,-a b 对应的option与option value(可省

(三)、利用命令行参数输入多个参数,判断该数组是否为回文数组

1 /* 2 利用命令行参数输入多个参数,并赋值给一数组,同时判断该数组是否为回文数组 3 –PS:例如数组{“123”,”222”,”333”,”222”,”123”}就是回文数组,即元素倒置过后与原元素一样 4 */ 5 package com.gen; 6 public class ArgumentHuiwen { 7 public static void main(String args[]) 8 { 9 int num[]=new int[100]; 10 int len=args.l

(四)、利用命令行参数输入一个整数,打印空心菱形

1 /*利用命令行参数输入一个整数,并判断该数字是否为奇数,如果是奇数,则用其作行数打印空心菱形 2 –PS:将字符串转换为数字的方法 3 •int num=Integer.parseInt(String number);*/ 4 5 package com.gen; 6 public class ArgumentKongLing { 7 public static void main(String args[]) 8 { 9 for (int m= 0; m < args.length;m++

(五)、利用命令行参数输入三个整数,并对三个数字进行降序排列

1 /*利用命令行参数输入三个整数,并对三个数字进行降序排列. 2 –PS:将字符串转换为数字的方法 3 •int num=Integer.parseInt(String number);*/ 4 package com.gen; 5 6 public class ArgumentOrder { 7 public static void main(String args[]) 8 { 9 System.out.println("Please input three number by args:

JAVA命令行参数输入 及 命令行参数输入数据到list中

命令行参数Java所有程序中都有一个main方法,而这个方法带有一个参数String args[]. 这个参数就是main方法接受的用户输入的参数列表,即命令行参数. 举例说明1——直接输出命令行参数的值 1 public class ArgsDemo { 2 public static void main(String[]args){ 3 4 int number= args.length; 5 System.out.println("共接受到"+number+"个参数&q