home | help
std::getenv(3)		       C++ Standard Libary		  std::getenv(3)

NAME
     std::getenv - std::getenv

Synopsis
	Defined in header <cstdlib>
	char* getenv( const char* env_var );

	Searches the environment list provided by the host environment (the OS),
     for a
	string	that  matches  the  C string pointed to by env_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
	getenv, as well as a call to the POSIX functions  setenv(),  unsetenv(),
     (until C++11)
	and putenv() may invalidate the pointer returned by a previous call or
	modify the string obtained from a previous call.
	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  setenv(),
     (since C++11)
	unsetenv(), and putenv() would introduce a data race if called without
	synchronization.

	Modifying the string returned by getenv invokes undefined behavior.

Parameters
	env_var - null-terminated character string identifying the name  of  the
     environmental
		  variable to look for

Return value
	Character  string identifying the value of the environmental variable or
     null pointer
	if such variable is not found.

Notes
	On POSIX systems, the environment variables are also accessible  through
     the global
	variable  environ, declared as extern char** environ; in <unistd.h>, and
     through the
	optional third argument, envp, of the main function.

Example
     // Run this code

      #include <cstdlib>
      #include <iostream>

      int main()
      {
	  if (const char* env_p = std::getenv("PATH"))
	      std::cout << "Your PATH is: " << env_p << '\n';
      }

Possible output:
      Your	       PATH		is:		/usr/local/sbin:/usr/lo-
     cal/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

See also
	C documentation for
	getenv

http://cppreference.com 	   2024.06.10			  std::getenv(3)

home | help