C の getchar() 関数を使用すると、ユーザーはコンソールから 1 つの文字を入力できます。ただし、Go には、タブの押下を処理する直接同等の機能はありません。オートコンプリート機能を備えたコンソール アプリケーションを開発する場合、これは困難になる可能性があります。
Go で考えられる代替案は、bufio.Reader を使用することです。以下に例を示します。
package main import ( "bufio" "fmt" "os" ) func main() { reader := bufio.NewReader(os.Stdin) input, _ := reader.ReadString('\n') fmt.Printf("Input Char Is : %v", string([]byte(input)[0])) }
bufio.Reader は 1 文字を読み取ることができますが、ユーザーは Enter キーを押して文字を入力する必要があります。タブの押下を検出する場合、これは適切ではありません。
この特定のニーズに対して、C の getchar() はユーザーが Enter キーを押すのを待機するため、適切ではありません。代わりに、代替オプションには以下が含まれます:
参照:
以上がタブを含む単一文字入力のための C の `getchar()` 機能を Go に実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。