std::getenv
| Défini dans l'en-tête <cstdlib>
|
||
char* getenv( const char* env_var );
|
||
Recherche la liste d'environnement fournie par l'environnement hôte (le système d'exploitation), pour une chaîne qui correspond à la chaîne C pointée par env_var et retourne un pointeur vers la chaîne C qui est associée au membre de la liste d'environnement correspondant.
|
Cette fonction n'est pas nécessairement thread-safe. Un autre appel à |
(jusqu'à C++11) |
|
Cette fonction est thread-safe (l'appeler depuis plusieurs threads n'introduit pas de course aux données) tant qu'aucune autre fonction ne modifie l'environnement hôte. En particulier, les fonctions POSIX |
(depuis C++11) |
Modifier la chaîne retournée par getenv entraîne un comportement indéfini.
Paramètres
| env_var | - | chaîne de caractères terminée par un caractère nul identifiant le nom de la variable d'environnement à rechercher |
Valeur de retour
Chaîne de caractères identifiant la valeur de la variable d'environnement ou pointeur nul si une telle variable n'est pas trouvée.
Notes
Sur les systèmes POSIX, les
variables d'environnement
sont également accessibles via la variable globale
environ
, déclarée comme
extern
char
**
environ
;
dans
<unistd.h>
, et via le troisième argument optionnel,
envp
, de
la fonction main
.
Exemple
#include <cstdlib> #include <iostream> int main() { if (const char* env_p = std::getenv("PATH")) std::cout << "Your PATH is: " << env_p << '\n'; }
Sortie possible :
Your PATH is: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Voir aussi
|
Documentation C
pour
getenv
|