ホームページ >バックエンド開発 >C++ >C# コンソール入力: `Console.Read()` と `Console.ReadLine()` の違いは何ですか?

C# コンソール入力: `Console.Read()` と `Console.ReadLine()` の違いは何ですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-15 09:01:45661ブラウズ

C# Console Input: What's the Difference Between `Console.Read()` and `Console.ReadLine()`?

C# コンソールの文字および行入力関数

C# では、Console.Read()Console.ReadLine() は両方ともユーザー入力を読み取るためのメソッドです。ただし、それらの機能と動作は異なります。それらの違いを見てみましょう:

1. 関数の使用法:

  • Console.Read(): ユーザーからの次の 1 文字のみを読み取ります。
  • Console.ReadLine(): スペースや特殊文字を含む、ユーザーが入力した文字の完全な行を読み取ります。

2. 戻り値:

  • Console.Read(): 読み取られた文字の Unicode コード ポイントを表す整数を返します。
  • Console.ReadLine(): ユーザーが入力した文字シーケンスを含む文字列を返します。

3. 復帰文字と改行文字:

  • Console.Read(): は、キャリッジ リターン (CR) またはライン フィード (NL) 文字を自動的にスキップしません。ユーザーが CR と NL を含む行を入力すると、両方の文字が読み取られます。
  • Console.ReadLine(): CR 文字と NL 文字を自動的に処理します。改行文字 (CR NL または LF) を入力の終わりとして解釈し、その時点までを読み取ります。

4. 入力のブロック:

  • どちらのメソッドもブロック的です。つまり、後続のコードを実行する前にユーザー入力を待機します。

例:

次のコードを考えてみましょう:

<code class="language-C#">Console.Write("输入一个字符:");
char ch = (char)Console.Read(); // 需要强制类型转换
Console.WriteLine($"您输入了:{ch}");

Console.Write("输入一行:");
string line = Console.ReadLine();
Console.WriteLine($"您输入了:{line}");</code>

ユーザーがこのプログラムを実行すると、変数「ch」に格納される文字を入力するよう求められます。ユーザーは行の入力を求められ、行は変数「line」に保存されます。この例では、「ch」には入力された最初の文字が含まれ、「line」にはユーザーが入力した行全体が含まれます。

結論:

Console.Read()Console.ReadLine() はどちらも入力を読み取るための重要なメソッドです。一度に個々の文字を処理する必要がある場合は Console.Read() を使用し、入力行全体を読み取る必要がある場合は Console.ReadLine() を使用します。それらの違いを理解すると、C# プログラムでそれらを効果的に使用するのに役立ちます。

以上がC# コンソール入力: `Console.Read()` と `Console.ReadLine()` の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。