Книга: Программирование для Linux. Профессиональный подход
Листинг 2.3. (print-env.c) Вывод переменных среды
Листинг 2.3. (print-env.c) Вывод переменных среды
#include <stdio.h>
/* Массив ENVIRON содержит среду выполнения. */
extern char** environ;
int main() {
char** var;
for (var = environ; *var != NULL; ++var)
printf("%sn", *var);
return 0;
}
He пытайтесь модифицировать массив environ
самостоятельно. Пользуйтесь для этих целей функциями setenv()
и unsetenv()
.
Обычно при запуске программа получает копию среды своей родительской программы (интерпретатора команд, если она была запущена пользователем). Таким образом, программы, запущенные из командной строки, могут исследовать среду интерпретатора команд.
Переменные среды чаще всего используют для передачи программам конфигурационной информации. Предположим, к примеру, что требуется написать программу, подключающуюся к серверу Internet. Имя сервера может задаваться в командной строке, но, если оно меняется нечасто, имеет смысл определить специальную переменную среды — скажем, SERVER_NAME
, — которая будет хранить имя сервера. При отсутствии переменной программа берет имя, заданное по умолчанию. Интересующая нас часть программы показана в листинге 2.4.
- Листинг 7.4. (print-environment.c) Отображение переменных среды процесса
- Листинг 10.1. (simpleid.c) Отображение идентификаторов пользователя и группы
- Значения переменных по умолчанию
- Включение и отключение синхронного вывода
- Листинг 15.11. Код для загрузки файла с Web-сервера
- 2. Правила вывода Армстронга
- 3. Производные правила вывода
- 1.6 Драйверы и буферы ввода-вывода
- 1.8 Ввод-вывод типичного приложения хранения данных
- Глава 6 BIOS – базовая система ввода-вывода
- Пример использования шаблона «Выводы – рекомендации»
- Выводы и практические рекомендации