|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Defined in header <cstdlib> | ||
char* getenv(constchar* env_var); | ||
Searches theenvironment list provided by the host environment (the OS), for a string that matches the C string pointed to byenv_var and returns a pointer to the C string that is associated with the matched environment list member.
This function is not required to be thread-safe. Another call to | (until C++11) |
This function is thread-safe (calling it from multiple threads does not introduce a data race) as long as no other function modifies the host environment. In particular, the POSIX functions | (since C++11) |
Modifying the string returned bygetenv invokes undefined behavior.
Contents |
| env_var | - | null-terminated character string identifying the name of the environmental variable to look for |
Character string identifying the value of the environmental variable or null pointer if such variable is not found.
On POSIX systems, theenvironment variables are also accessible through the global variableenviron, declared asexternchar** environ; in<unistd.h>, and through the optional third argument,envp, ofthe main function.
#include <cstdlib>#include <iostream> int main(){if(constchar* env_p= std::getenv("PATH"))std::cout<<"Your PATH is: "<< env_p<<'\n';}
Possible output:
Your PATH is: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
C documentation forgetenv |