std:: getenv
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Program termination | |||||||||||||||||||||
|
|||||||||||||||||||||
| Unreachable control flow | |||||||||||||||||||||
|
(C++23)
|
|||||||||||||||||||||
| Communicating with the environment | |||||||||||||||||||||
|
|||||||||||||||||||||
| Signals | |||||||||||||||||||||
| Signal types | |||||||||||||||||||||
| Non-local jumps | |||||||||||||||||||||
| Types | |||||||||||||||||||||
|
Défini dans l'en-tête
<cstdlib>
|
||
|
char
*
getenv
(
const
char
*
env_var
)
;
|
||
Recherche dans la
liste d'environnement
fournie par l'environnement hôte (le système d'exploitation), une chaîne qui correspond à la chaîne C pointée par
env_var
et retourne un pointeur vers la chaîne C associée au membre correspondant de la liste d'environnement.
|
Cette fonction n'est pas requise d'être sûre en contexte multithread. Un autre appel à
|
(jusqu'à C++11) |
|
Cette fonction est sûre en contexte multithread (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
provoque un comportement indéfini.
Table des matières |
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
|