次のコードは、名前と姓を尋ねます。
class Program
{
static void Main(string[] args)
{
Console.Write("Enter your name: ");
string s = Console.ReadLine();
Console.WriteLine("Your name: " + s);
Console.Write("Enter your surname: ");
int r = Console.Read();
Console.WriteLine("Your surname: " + r);
Console.ReadLine();
}
}
名前を入力すると、プログラムは入力内容を正常に表示します。ただし、姓を入力すると、プログラムはすぐに停止します。私の理解では、 Console.Read() は、入力した文字列の最初の文字 (ASCII コード?) の int 値を返す必要があります。
Console.Read() の直後にプログラムが終了するのはなぜですか? Console.ReadLine() は、プログラムを開いたままにするべきではありませんか? Visual Studio 2012 を使用しています。