Sous-routine putenv

Objectif

Définit une variable d'environnement.

Bibliothèque

Bibliothèque C standard (libc.a)

Syntaxe

int putenv ( String)
char *String;

Descriptif

Attention: des résultats imprévisibles peuvent se produire si une sous-routine transmet à la sous-routine putenv un pointeur vers une variable automatique, puis qu'elle est renvoyée alors que la variable fait toujours partie de l'environnement.

La sous-routine putenv définit la valeur d'une variable d'environnement en modifiant une variable existante ou en en créant une nouvelle. Le paramètre Chaîne pointe vers une chaîne de la forme Nom=Valeur, où Nom correspond à la variable d'environnement et Valeur à la nouvelle valeur.

L'espace mémoire désigné par le paramètre String fait partie de l'environnement, de sorte que la modification de la chaîne modifie effectivement une partie de l'environnement. L'espace n'est plus utilisé après la modification de la valeur de la variable d'environnement en appelant à nouveau la sous-routine putenv . De plus, après l'appel de la sous-routine putenv , les variables d'environnement ne sont pas nécessairement classées par ordre alphabétique.

La sous-routine putenv manipule la variable externe environ et peut être utilisée avec la sous-routine getenv . Toutefois, le paramètre EnvironmentPointer , troisième paramètre de la sous-routine principale, n'est pas modifié.

La sous-routine putenv utilise la sous-routine malloc pour agrandir l'environnement.

Paramètres

Tableau 1. Paramètres
Article Descriptif
Chaîne Un pointeur vers la chaîne Name=Value .

Valeurs renvoyées

Une fois l'opération terminée, la valeur 0 est renvoyée. Si la sous-routine malloc ne parvient pas à obtenir suffisamment d'espace pour développer l'environnement, la sous-routine putenv renvoie une valeur différente de zéro.