1

私はC++から来るC#を学ぼうとしています。私はそれを理解するためにいくつかの基本的なコンソールのものを書いていますが、C#で入力の単純なチェーンを行うことが可能かどうか疑問に思っていました。たとえば、C ++の場合:

cout<<"Enter two numbers: ";
cin >> int1 >> int2;

次に、3 5と入力し、Enterキーを押すだけで、値は問題ありません。ただし、C#では、次のように分割する必要があります(私が知る限り)。

Console.Write("Enter the first number: ";
int1 = (char)Console.Read();
Console.Writeline("");
Console.Write("Enter the second number: ";
int2 = (char)Console.Read();

多分私は何かが足りないだけです。

4

2 に答える 2

2

行全体を読み取ることができ、Console.ReadLine分割、基本的なテスト解析、または正規表現のさまざまな方法で 2 つの変数を取得できます。


短い例

  Console.WriteLine("Enter two Numbers");
  int Num1 = 0 ,Num2 = 0 ;
  Match M = Regex.Match(Console.ReadLine(),@"(\d+) (\d+)");
  Num1 = int.Parse(M.Groups[1].Value);
  Num2 = int.Parse(M.Groups[2].Value);

  //Using Split 
  Console.WriteLine("Enter two Numbers");
  string[] Ints = (Console.ReadLine().Split(' '));
  Num1 = int.Parse(Ints[0]);
  Num2 = int.Parse(Ints[1]);
于 2010-03-09T00:37:26.120 に答える
0

入力チェーンが C# で機能するのを妨げるものは何もありません。C# ではより少ない演算子を再定義できるため、適切な演算子構文が得られないだけです。

あなたができるようにする拡張メソッドを書く:

Console.In.Read(out int1).Read(out int2);

読者の演習として残されています。

于 2010-03-09T00:42:36.590 に答える