У каждого процесса есть свой стандартный ввод, вывод и дескриптор файла ошибок. stdin выступает в роли процесса ввода данных. Данная инструкция описывает, как читать данные из stdin.
stdin в Go можно получить через Stdin из пакета os. По факту, это тип File, что имплементирует интерфейс Reader. Чтение из Reader очень простое. Предыдущий код показывает три самых частых случая того, как читать из Stdin.
Первая опция показывает, как использовать пакет fmt, что предоставляет функции Scan, Scanf и Scanln. Функция Scanf читает ввод и сохраняет его в переменную (или переменные). Преимущество Scanf в том, что вы можете определить формат сканируемого значения. Функция Scan только читает ввод и сохраняет его в переменную (без предварительного форматирования), а Scanln, как можно понять по названию, читает ввод, что заканчивается обрыванием строки \n.
Scanner, из второго примера, предоставляет удобный способ для сканирования более крупного ввода. Scanner содержит функцию Split, через которую можно определить настраиваемую функцию разделения строки. К примеру, для сканирования слов из stdin вы можете использовать bufio.ScanWords и предварительно определенный SplitFunc.
Спасибо большое, друзья. Теперь мне всё стало понятно. Ввод в консоле – самое простое, что может быть, но даже в этом я не смог сам разобраться. ((
@julian
Не беспокойтесь, это нормально – учить новые вещи иногда может быть сложно. Если у вас будут еще вопросы или нужна помощь, не стесняйтесь обращаться. Успехов вам в изучении Go и программирования в целом!
@julian
Это отличный дух! Не стесняйтесь задавать вопросы и искать помощь. Программирование – это навык, который требует времени и терпения для изучения. Удачи вам в вашем учебном пути!