C# 在C中检查命令行参数的长度#

C# 在C中检查命令行参数的长度#,c#,command-line-arguments,C#,Command Line Arguments,我试图做的是确保从命令行传递的参数在一组特定字符之间,但是当使用超出可接受范围的值时,代码似乎没有突出显示任何问题 if (args[1].Length < 10 && args[1].Length > 40) // Test to see if the password is between 10 and 40 characters { Console.WriteLine("Please use a password between 10 and 40 charac

我试图做的是确保从命令行传递的参数在一组特定字符之间,但是当使用超出可接受范围的值时,代码似乎没有突出显示任何问题

if (args[1].Length < 10 && args[1].Length > 40) // Test to see if the password is between 10 and 40 characters
{
Console.WriteLine("Please use a password between 10 and 40 characters");
Environment.Exit(0);
}
if(args[1]。长度<10&&args[1]。长度>40)//测试密码是否在10到40个字符之间
{
Console.WriteLine(“请使用10到40个字符之间的密码”);
环境。退出(0);
}
我想知道是否有人会对为什么这不起作用有任何建议。 传递的参数是-e password file1.txt file2.txt

提前谢谢


Alistair

该参数的长度不能小于10,也不能大于40。您应该选择满足以下任一条件(使用),但严格来说,不能同时满足这两个条件:

if (args[1].Length < 10 || args[1].Length > 40)
if(args[1]。长度<10||args[1]。长度>40)

参数的长度不能小于10,也不能小于40。您应该选择满足以下任一条件(使用),但严格来说,不能同时满足这两个条件:

if (args[1].Length < 10 || args[1].Length > 40)
if(args[1]。长度<10||args[1]。长度>40)

您的逻辑错误,应该是
|

    if (args[1].Length < 10 || args[1].Length > 40) // Test to se
if(args[1]。长度<10 | | args[1]。长度>40)//测试到se

您的逻辑错误,应该是
|

    if (args[1].Length < 10 || args[1].Length > 40) // Test to se
if(args[1]。长度<10 | | args[1]。长度>40)//测试到se
它应该是:

if (args[1].Length < 10 || args[1].Length > 40) // Test to see if the password is  between 10 and 40 characters
{
   Console.WriteLine("Please use a password between 10 and 40 characters");
   Environment.Exit(0);
}
if (args[1].Length < 10 || args[1].Length > 40)
if(args[1]。长度<10 | | args[1]。长度>40)//测试密码是否在10到40个字符之间
{
Console.WriteLine(“请使用10到40个字符之间的密码”);
环境。退出(0);
}
它应该是:

if (args[1].Length < 10 || args[1].Length > 40) // Test to see if the password is  between 10 and 40 characters
{
   Console.WriteLine("Please use a password between 10 and 40 characters");
   Environment.Exit(0);
}
if (args[1].Length < 10 || args[1].Length > 40)
if(args[1]。长度<10 | | args[1]。长度>40)//测试密码是否在10到40个字符之间
{
Console.WriteLine(“请使用10到40个字符之间的密码”);
环境。退出(0);
}

您给出了错误的条件:

应该是:

if (args[1].Length < 10 || args[1].Length > 40) // Test to see if the password is  between 10 and 40 characters
{
   Console.WriteLine("Please use a password between 10 and 40 characters");
   Environment.Exit(0);
}
if (args[1].Length < 10 || args[1].Length > 40)
if(args[1]。长度<10||args[1]。长度>40)

您给出了错误的条件:

应该是:

if (args[1].Length < 10 || args[1].Length > 40) // Test to see if the password is  between 10 and 40 characters
{
   Console.WriteLine("Please use a password between 10 and 40 characters");
   Environment.Exit(0);
}
if (args[1].Length < 10 || args[1].Length > 40)
if(args[1]。长度<10||args[1]。长度>40)

这不取决于条件语句是否为错误吗?--如果pwd长度小于10或大于40,则为错误。条件语句为错误(在进一步执行代码之前,我捕获了超出范围的任何内容),感谢您的回答!这不取决于条件语句是否为错误吗?--如果pwd长度小于10或大于40,则为错误。条件语句为错误(在进一步执行代码之前,我捕获了超出范围的任何内容),感谢您的回答!