РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1389 of 1593 menu

Функция flag.Parse

Функция flag.Parse выполняет разбор аргументов командной строки в соответствии с определенными флагами. Она должна вызываться после объявления всех флагов с помощью функций типа flag.String, flag.Int, flag.Bool и других, но до использования значений флагов. При вызове происходит анализ фактических аргументов командной строки (содержатся в os.Args), начиная со второго элемента, и установка значений флагов. Если встречается флаг, который не был объявлен, функция выводит сообщение об ошибке и завершает программу с кодом 2. После успешного разбора значения флагов становятся доступными через указатели, переданные в функции объявления флагов.

Синтаксис

flag.Parse()

Пример

Давайте объявим строковый флаг "name" со значением по умолчанию "world", разберем аргументы командной строки и выведем значение флага:

package main import ( "flag" "fmt" ) func main() { var name string flag.StringVar(&name, "name", "world", "specify the name") flag.Parse() fmt.Printf("Hello, %s!\n", name) }

Если запустить программу без аргументов, результат будет:

"Hello, world!"

Пример

Запустим программу с флагом -name=Alice:

go run main.go -name=Alice

Результат выполнения:

"Hello, Alice!"

Пример

Объявим флаги разных типов: строковый, целочисленный и булев:

package main import ( "flag" "fmt" ) func main() { name := flag.String("name", "user", "user name") age := flag.Int("age", 18, "user age") active := flag.Bool("active", false, "is user active") flag.Parse() fmt.Printf("Name: %s, Age: %d, Active: %t\n", *name, *age, *active) }

Запустим с аргументами:

go run main.go -name=Bob -age=30 -active

Результат выполнения:

"Name: Bob, Age: 30, Active: true"

Смотрите также

  • функцию flag.String,
    которая объявляет строковый флаг
  • функцию flag.Int,
    которая объявляет целочисленный флаг
  • функцию flag.Bool,
    которая объявляет булев флаг
  • функцию flag.Float64,
    которая объявляет флаг с плавающей точкой
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить