Функция clearenv() очищает окружение всех пар имя-значение
и устанавливает значение внешней переменной
environ
в значение NULL.
ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Функция clearenv() вовзвращает ноль при нормальном завершении
работы и ненулевое значение при ошибках.
ДОСТУПНОСТЬ
Не в libc4, libc5. В glibc начиная с glibc 2.0.
СООТВЕТСТВИЕ СТАНДАРТАМ
Разные версии Unix (DGUX, HPUX, QNX, ...).
POSIX.9 (привязки для FORTRAN77).
POSIX.1-1996 не воспринимал clearenv() и putenv(),
но затем его поведение изменилось и эти функции были включены
в последующие версии этого стандарта (B.4.6.1). Однако, SUSv3
добавляет только putenv() и отвергает clearenv().
ЗАМЕЧАНИЯ
Используется в приложениях, заботящихся о безопасности.
Если это неизбежно, то исполните:
environ = NULL;
В страницах руководства DGUX и Tru64 написано:
Если
environ
изменяется не с помощью функций
putenv(),
getenv(),
или
clearenv(),
то
clearenv()
возвратит ошибку и окружение процесса не будет изменяться.