1

私がやろうとしているのは、コマンドラインから渡される引数が特定の文字セットの間にあることを確認することですが、許容範囲外の値が使用された場合、コードは問題を強調していないようです。

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);
}

なぜこれが機能しないのかについて誰かが何か提案があるのではないかと思いました。渡される引数は-epasswordfile1.txtfile2.txtです。

前もって感謝します!

アリステア

4

4 に答える 4

2

あなたは間違った論理を持っています。||

    if (args[1].Length < 10 || args[1].Length > 40) // Test to se
于 2012-11-01T11:43:39.527 に答える
1

引数の長さを 10より短く 40より長くすることはできません。これらの条件のいずれか (条件付き OR 演算子を使用) を満たすように選択する必要がありますが、厳密に両方を満たすことはできません。

if (args[1].Length < 10 || args[1].Length > 40)
于 2012-11-01T11:43:26.970 に答える
1

そのはず:

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);
}
于 2012-11-01T11:44:19.247 に答える
1

あなたは間違った条件を与えました:

そのはず:

if (args[1].Length < 10 || args[1].Length > 40)
于 2012-11-01T11:47:21.750 に答える