2010-03-09 3 views
1

Я пытаюсь изучить C#, исходящий из C++. Я пишу только некоторые базовые материалы для консоли, чтобы понять это, и задавался вопросом, возможно ли простую цепочку входов на 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(); 

Может быть, я просто что-то отсутствует.

ответ

2

вы можете прочитать всю строку с Console.ReadLine и можете получить две переменные различными способами: разделение, базовый анализ или регулярное выражение.


Короткий Ex

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]); 
0

Там нет ничего, что предотвращает вход формирования цепочки от работы в C#, вы просто не получите хороший синтаксис оператора, потому что C# позволяет переопределить меньше операторов.

Дать метод расширения, чтобы позволить вам сделать:

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

остается в качестве упражнения для читателя.