ДОСТУП К ПЕРЕМЕННЫМ СРЕДЫ ОПЕРАЦИОННОЙ СИСТЕМЫ
Как вы знаете, большинство операционных систем позволяют вам определять переменные среды, к которым ваши программы могут обращаться для определения разных параметров, таких как командный путь. Например, если вы используете среду MS-DOS, вы устанавливаете или выводите переменные среды с помощью команды SET. В зависимости от типа вашего компилятора вы можете обращаться к переменным среды из вашей программы, используя третий параметр main с именем env. Подобно параметру argv, параметр env представляет собой указатель на массив указателей на символьные строки. Также, подобно argv, C++ завершает этот массив символом NULL. Если ваш компилятор поддерживает параметр env, вы можете изменить заголовок функции main, как показано ниже:
void main(int argc, char *argv[], char *env[])
Следующая программа SHOWENV.CPP выполняет цикл по элементам массива env для вывода переменных среды программы:
#include iostream.b
void main(int argc, char *argv[], char *env[])
{
while (*env) cout *env++ endl;
}
Как видите, программа просто выполняет цикл по элементам массива env, пока не встретит указатель NULL, который указывает последнюю запись массива. Если вы откомпилируете и запустите эту программу, она выведет ваши переменные среды, как показано ниже:
С:\ SHOWENV ENTER
ТЕМР=С:\WINDOWS\TEMP
PROMPT=$p$g
COMSPEC=C:\WINDOWS\COMMAND.СОМ
РАТН=С:\WINDOWS;С:\DOS
Доступ к переменным среды
В зависимости от типа компилятора, ваши программы могут обращаться к переменным среды операционной системы, используя третий параметр функции main с именем env. Подобно параметру argv, параметр env представляет собой массив указателей на символьные строки, каждый из которых указывает переменную среды. Чтобы обратиться к переменным среды, используя параметр env, измените заголовок функции main следующим образом:
void main(int argc, char *argv[], char *env[])