| Чтение окружения: environ, getenv() |
|
Программа может читать окружение двумя способами:
Функция getenv () имеет следующий прототип: char * getenv (char * VAR_NAME); Она возвращает значение указанной переменной var_name. Если переменная отсутствует в окружении, то возвращается null. Рассмотрим сначала пример, использующий environ. Следующая программа просто выводит на экран все окружение. Программа myenvl.с #include <stdio.h> Массив environ обычно служит для просмотра окружения (как в нашем случае), а также для передачи окружения в другой процесс в ходе реализации многозадачности, но об этом речь пойдет в главе 10. Для получения значения конкретной переменной предназначена функция getenv {}. Приведенная в листинге программа демонстрирует ее работу. Программа myenv2.с iinclude <stdio.h> Программа выводит значение переменной окружения, имя которой читается из первого аргумента командной строки (argv[i]j. Функция getenv () возвращает значение null, если переменная окружения не найдена. В этом случае наша программа выводит соответствующее сообщение: $ gcc -о myenvl myenvl.c Обратите внимание, что имена переменных окружения чувствительны к регистру символов. Исторически сложилась практика именования переменных. окружения заглавными буквами, однако символы нижнего регистра также допускаются. Действительно, запись "user not found" выглядит несколько двусмысленно: то ли переменная user не найдена, то ли пользователь не найден. А все из-за того, что имя переменной сливается с остальным текстом.
Related Articles
Set as favorite
Bookmark
Email This
Hits: 232 Комментарии (0)RSS feed CommentsНаписать комментарий |