Поделиться через


Описание аргумента

Параметр argc в main wmain функциях — целое число, указывающее, сколько аргументов передаются программе из командной строки. Поскольку имя программы считается аргументом, значение argc по крайней мере равно единице.

Замечания

Параметр argv является массивом указателей на строки, завершающиеся значением NULL, который представляет аргументы программы. Каждый элемент массива указывает на строковое представление аргумента, переданного main (или wmain). (Сведения о массивах см. в разделе Объявления массива.) Параметр argv можно объявить в виде массива указателей на тип char (char *argv[]) или в виде указателя на тип char (char **argv). Для wmainэтого параметр можно объявить как массив указателей на тип (wchar_t *argv[]), либо как указатель на указатели на тип wchar_t wchar_t (wchar_t **argv).argv

По соглашению — это команда, argv[0] с помощью которой вызывается программа. Однако можно создать процесс, и CreateProcess если вы используете оба первых и второго аргументов (lpApplicationName и lpCommandLine), argv[0] может не быть исполняемым именем; используется GetModuleFileName для получения имени исполняемого файла.

Последний указатель (argv[argc]) — NULLэто . (Смgetenv. в справочнике по библиотеке времени выполнения альтернативный метод получения сведений об переменной среды.)

Блок, относящийся только к системам Майкрософт

Параметр envp является указателем на массив строк, завершающихся значением NULL, которые представляют значения, заданные в переменных среды пользователя. Параметр envp можно объявить как массив указателей на тип char (char *envp[]) или как указатель на указатели на тип char (char **envp). wmain В функции envp параметр можно объявить как массив указателей wchar_t на (wchar_t *envp[]) или в качестве указателя на указатели wchar_t на (wchar_t **envp). Конец массива указывается указателем NULL* . Блок среды, переданный main или wmain является "замороженным" копией текущей среды. Если вы позже измените среду с помощью вызова _putenv или_wputenv, текущая среда (возвращенная/_wgetenv getenvи _environ _wenviron переменная) изменится, но блок, на который указываетenvp, не изменится. Параметр envp совместим с ANSI/ISO C89 в C, но является расширением Майкрософт в C++.

Завершение блока, относящегося только к системам Майкрософт

См. также

Функция main и выполнение программ