Система обработки аргументов командной строки в C++ работает через параметры функции main: metanit.com
- argc — целое число, содержащее количество аргументов, которые следуют в argv. learn.microsoft.com Параметр argc всегда больше или равен 1. learn.microsoft.com
- argv — массив завершающихся null строк, представляющих введённые пользователем программы аргументы командной строки. learn.microsoft.com По соглашению argv {0-host} — это команда, с помощью которой вызывается программа. learn.microsoft.com argv learn.microsoft.com — первый аргумент командной строки. learn.microsoft.com Последний аргумент из командной строки имеет значение NULL. learn.microsoft.com
При интерпретации аргументов, заданных в командной строке операционной системы, код запуска среды выполнения использует следующие правила: learn.microsoft.com
- Аргументы разделяются пробелами (пробел или табуляция). learn.microsoft.com
- Первый аргумент (argv {0-host} ) обрабатывается особым образом — он представляет имя программы. learn.microsoft.com Это должен быть допустимый путь, поэтому разрешены части, заключённые в двойные кавычки (”). learn.microsoft.com
- Строка, окружённая двойными кавычками, интерпретируется как один аргумент, который может содержать символы пробела. learn.microsoft.com
- Если командная строка заканчивается раньше, чем будет найдена закрывающая двойная кавычка, все уже прочитанные символы выводятся как один последний аргумент. learn.microsoft.com
Аргументы командной строки обрабатываются внутренней подпрограммой в коде запуска среды выполнения. learn.microsoft.com