Как получить доступ к среде на C++

Kak Polucit Dostup K Srede Na C



C++ — наиболее эффективный язык высокого уровня для программирования. C++ предоставляет нам множество библиотек функций и позволяет обрабатывать исключения и перегрузку функции. Мы также можем получить окружение на C++ с помощью функции getenv(). Эти переменные среды находятся в операционной системе, в которой работают все языки программирования, и к ним можно каким-либо образом получить доступ. Функция getenv() предоставляет языку программирования C++ доступ к этим возможностям. Используя метод C++ getenv(), указатель на строку C, содержащую содержимое предоставленных переменных среды, возвращается в качестве параметра. Здесь мы изучим эту концепцию и проверим, как мы будем получать доступ к среде в нашем программировании на C++, с помощью примеров.

Пример 1:

Мы просто начнем с нашего первого примера. Для создания кодов C++ нам нужны файлы заголовков. Итак, мы включаем в этот код необходимые нам заголовочные файлы. Заголовочный файл «iostream» важен, потому что в этом коде нам нужно отобразить некоторые данные, и этот заголовочный файл поддерживает функцию «cout». Затем у нас есть «cstdlib»; этот заголовок предоставляет набор методов, таких как метод getenv().

Теперь мы добавляем «пространство имен std», поэтому нам не нужно добавлять «std» с функциями «cout()» в наш код. После этого вызывается функция main(). Затем мы помещаем сюда «char*», который является указателем с именем «var_1». Затем в эту переменную «var_1» мы помещаем функцию «getenv()» и передаем «SESSIONNAME» в качестве ее параметра.







После этого мы добавляем условие «if», которое проверяет, не равен ли «var_1» значению «NULL». Если «var_1» не равно нулю, сначала печатается имя переменной среды. Затем в следующей строке выводится значение этой переменной. Но если «var_1» имеет значение «NULL», там не будет отображаться никакого сообщения, и код завершится.



Код 1:



#include
#include
с использованием пространство имен стандартный ;
интервал основной ( )
{
голец * был_1 ;
был_1 '=' gettenv ( 'ИМЯ СЕССИИ' ) ;
если ( был_1 ! '=' НУЛЕВОЙ )
расчет << «Имя переменной — SESSIONNAME» << конец ;
расчет << 'Переменная среды: ' << был_1 ;
возвращаться 0 ;
}

Выход :
Этот вывод отображает имя переменной среды, которую мы добавляем в качестве параметра функции getenv(), и значение этой переменной среды. Мы получаем это значение с помощью функции getenv() в нашем коде.





Пример 2:

Теперь у нас есть еще один пример. Мы начинаем наш код с включения необходимых файлов заголовков. Затем мы набираем «пространство имен std». После этого мы обращаемся к функции «main()», в которой создаем указатель «char*» с именем «newEnv_var» и инициализируем его именем переменной среды «Path». Затем мы добавляем еще один «char*», который также является указателем, и называем его «myValue».



Теперь мы инициализируем переменную «myValue» с помощью функции «getenv()» и передаем «newEnv_var» этой функции «getenv()»; это параметр этой функции. Эта переменная «newEnv_var» содержит имя переменной среды, поскольку мы инициализируем ее с помощью «PATH». Затем добавляется условие «if», чтобы определить, эквивалентно ли «myValue» значению «NULL» или нет. Если «myValue» не равно нулю, сначала печатается имя переменной среды, а затем значение переменной в следующей строке. Однако если для параметра «myValue» установлено значение «NULL», сообщение не отображается, и код заканчивается здесь.

Код 2:

#include
#include
с использованием пространство имен стандартный ;
интервал основной ( )
{
голец * newEnv_var '=' 'ПУТЬ' ;
голец * мое значение ;
мое значение '=' gettenv ( newEnv_var ) ;
если ( мое значение ! '=' НУЛЕВОЙ ) {
расчет << 'Переменная = ' << newEnv_var << конец ;
расчет << 'Значение = ' << мое значение << конец ;
}
еще
расчет << «Переменная не существует!» << мое значение ;
возвращаться 0 ;
}

Выход:
Теперь на терминале отображается значение переменной среды «PATH», которую мы получаем с помощью функции «getenv()» в нашем коде. На каждом компьютере он разный, поскольку путь на каждом компьютере разный.

Пример 3:

Вот еще один пример: мы вводим «namespace std» в начале нашего кода после включения необходимых заголовочных файлов «iostream» и «cstdlib». Затем мы входим в метод «main()», где генерируем указатель «char*» с именем «myVar» и инициализируем имя переменной среды «PUBLIC».

Далее мы создаем новый символ «char*» под названием «myValue»; это тоже указатель. Теперь, когда «myVar» передается в функцию «getenv()», с помощью которой мы инициализируем переменную «myValue», это аргумент функции. Поскольку мы инициализируем его с помощью «PUBLIC», имя переменной среды содержится в этой переменной «myVar».

Затем, чтобы убедиться, что «myValue» равно «NULL» или нет, добавляется условие «if». Имя переменной среды появится первым на экране, если «myValue» не равно нулю, а значение переменной появится в следующей строке. Затем сюда добавляется другая часть, которая выполняется, если данное условие не удовлетворено. Здесь мы печатаем сообщение о том, что «Переменная здесь не найдена».

Код 3:

#include
#include
с использованием пространство имен стандартный ;
интервал основной ( )
{
голец * мояВар '=' 'ПУБЛИК' ;
голец * мое значение ;
мое значение '=' gettenv ( мояВар ) ;
если ( мое значение ! '=' НУЛЕВОЙ ) {
расчет << 'Переменная = ' << мояВар << конец ;
расчет << 'Это значение = ' << мое значение << конец ;
}
еще
расчет << «Переменная здесь не найдена..!!» << мое значение ;
возвращаться 0 ;
}

Выход:
В этом выводе отображается имя переменной среды, которую мы добавляем в качестве параметра функции getenv(), вместе с ее значением. Мы можем получить это значение, используя функцию getenv() нашего кода.

Пример 4:

Здесь мы создаем постоянный массив символов с именем «NewEnv_var[]» и размером «6». Затем мы передаем в этот массив все возможные переменные среды. Ниже у нас есть еще один массив с именем «char *env_value[]» и того же размера «6». Теперь у нас есть цикл «for», и мы зацикливаем все эти переменные среды из функции «getenv()», чтобы получить значения всех этих переменных и сохранить их в массиве «env_value». Внутри этого цикла for мы также помещаем условие if, которое проверяет, является ли значение среды нулевым. Если значение не равно нулю, оно печатает значение и имя переменной. Если оно равно нулю, отображается сообщение о том, что переменная среды здесь не существует.

Код 4:

#include
#include
с использованием пространство имен стандартный ;
интервал основной ( )
{
константа голец * NewEnv_var [ 6 ] '=' { 'ПУБЛИК' , 'ДОМ' , 'ИМЯ СЕССИИ' , 'ЛИБ' , «СистемДрайв» , 'ДЕЛТРИ' } ;
голец * env_value [ 6 ] ;
для ( интервал а '=' 1 ; а <= 6 ; а ++ )
{
env_value [ а ] '=' gettenv ( NewEnv_var [ а ] ) ;
если ( env_value [ а ] ! '=' НУЛЕВОЙ )
расчет << «Переменная есть» << NewEnv_var [ а ] << ', и это 'Value= ' << env_value [ а ] << конец ;
еще
расчет << NewEnv_var [ а ] << 'здесь не существует' << конец ;
}
}

Выход:
Здесь показаны все возможные значения переменной среды, а также сообщение о том, что «HOME», «LIB» и «DELTREE» не существуют, что означает, что их значение равно NULL.

Пример 5:

Теперь вперед. Это последний пример этого урока. Здесь мы создаем постоянный массив символов размером «4» под названием «Variable[]», которому мы предоставляем все потенциальные переменные среды. Теперь мы используем цикл «for». Ниже находится еще один массив с тем же размером «4», называемый «char *values[]», и мы помещаем туда функцию «getenv()» и передаем «переменную[i]» в качестве ее параметра. Этот цикл используется для перебора всех переменных среды, получения их значений из функции «getenv()» и сохранения их в массиве «values[]».

Мы включаем условие «if» в этот цикл «for», который определяет, является ли значение среды нулевым или нет. Значение и имя переменной печатаются, если значение не равно нулю, и отображается сообщение, если оно равно NULL, которое указано в части «else».

Код 5:

#include
с использованием пространство имен стандартный ;
интервал основной ( ) {
константа голец * переменная [ 4 ] '=' { 'ПУБЛИК' , 'ДОМ' , 'ДЕЛТРИ' , 'ЛОГИМЯ' } ;
для ( интервал я '=' 0 ; я <= 4 ; я ++ )
{
константа голец * ценности '=' gettenv ( переменная [ я ] ) ;
если ( ценности ! '=' НУЛЕВОЙ ) {
расчет << переменная [ я ] << '=' << ценности << конец ;
}
еще {
расчет << переменная [ я ] << 'Здесь не найдено!' << конец ;
}
}
возвращаться 0 ;
}

Выход:
В этом случае отображаются возможные значения переменной среды вместе с уведомлением о том, что значения «HOME», «DELTREE» и «LONGNAME» здесь не найдены, что означает, что они являются значениями NULL.

Заключение

Это руководство посвящено тому, «как получить доступ к среде на C++». Мы рассмотрели примеры, в которых научились получать доступ к переменной среды индивидуально или использовать массив, в который мы передаем все возможные переменные среды, а затем получаем значения с помощью функции getenv(). Этот метод getenv() предоставляется языком C++ для получения необходимых значений переменных среды.