C#命令列參數

來源:互聯網
上載者:User

 

Main 方法可以使用參數,在這種情況下它採用下列形式之一:

static int Main(string[] args) 

static void Main(string[] args) 

 若要在 Windows 表單應用程式中的 Main 方法中啟用命令列參數,必須手動修改 program.cs 中 Main 的簽名。Windows 表單設計器產生的程式碼建立沒有輸入參數的 Main。也可以使用 Environment..::.CommandLine 或 Environment..::.GetCommandLineArgs 從控制台或 Windows 應用程式中的任何位置訪問命令列參數。

 

 Main 方法的參數是表示命令列參數的 String 數組。一般是通過測試 Length 屬性來確定參數是否存在,例如

 

if (args.Length == 0)
{
    System.Console.WriteLine("Please enter a numeric argument.");
    return 1;
}

 

 還可以使用 Convert 類或 Parse 方法將字串參數轉換為數實值型別。例如,下面的語句使用 Parse 方法將 string 轉換為 long 數字:

 long num = Int64.Parse(args[0]);

也可以使用別名為 Int64 的 C# 類型 long: 

 long num = long.Parse(args[0]);

 還可以使用 Convert 類的方法 ToInt64 完成同樣的工作:

long num = Convert.ToInt64(s); 

 

樣本 

public class Functions
{
    public static long Factorial(int n)
    {
        // Test for invalid input
        if ((n <= 0) || (n > 256))
        { 
            return -1; 
        }   

        // Calculate the factorial iteratively rather than recursively:
        long tempResult = 1;
        for (int i = 1; i <= n; i++)
        {
            tempResult *= i;
        }
        return tempResult;
    }
}

class MainClass
{
    static int Main(string[] args)
    {
        // Test if input arguments were supplied:
        if (args.Length == 0)
        {
            System.Console.WriteLine("Please enter a numeric argument.");
            System.Console.WriteLine("Usage: Factorial <num>");
            return 1;
        }

        // Try to convert the input arguments to numbers. This will throw
        // an exception if the argument is not a number.
        // num = int.Parse(args[0]);
        int num;
        bool test = int.TryParse(args[0], out num);
        if(test == false)
        {
            System.Console.WriteLine("Please enter a numeric argument.");
            System.Console.WriteLine("Usage: Factorial <num>");
            return 1;
        }

        // Calculate factorial.
        long result = Functions.Factorial(num);

        // Print result.
        if(result == -1)
            System.Console.WriteLine("Input must be > 0 and < 256.");
        else
            System.Console.WriteLine("The Factorial of {0} is {1}.", num, result);

        return 0;            
    }
}
// If 3 is entered on command line, the

//  output reads: The factorial of 3 is 6.


 如果需要使用CSC命令,添加路徑見:CSC命令路徑添加

 在命令提示行下調試如:

C:\Users\EricHu>"D:\backup\我的文件\visual studio 2010\Projects\MulMethod01\MulMethod01\bin\Debug\MulMethod01.exe" 23

 

 

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.