TCHAR * envp []: Что это? - PullRequest
       24

TCHAR * envp []: Что это?

13 голосов
/ 16 июня 2010

Я создал консольный проект VC ++ с Visual Studio, и он автоматически сгенерировал эту функцию:

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { ... }

Мне просто интересно, что означает envp и как / когда я могу / должен его использовать?

Спасибо!

1 Ответ

12 голосов
/ 16 июня 2010

Аргумент envp выше будет хранить переменные окружения.

Массив envp, который является распространенным расширением во многих системах UNIX®, используется в Microsoft C ++.Это массив строк, представляющих переменные, установленные в пользовательской среде.Этот массив заканчивается пустой строкой.Он может быть объявлен как массив указателей на char (char * envp []) или как указатель на указатели на char (char ** envp).Если ваша программа использует wmain вместо main, используйте тип данных wchar_t вместо char.Блок среды, переданный в main и wmain, является «замороженной» копией текущей среды.

...