Utilisation de la fonction GETENV dans la programmation C

Utilisation de la fonction GETENV dans la programmation C
Dans le langage de programmation C, plusieurs fonctions aident l'utilisateur à acquérir des informations pertinentes, telles que le nom du processus et l'ID. De même, dans cet article, nous discuterons des informations sur la liste d'environnement qui contient le nom de variable de l'environnement, puis renvoie la valeur sous la forme d'un pointeur. Si la fonction getenv () ne peut pas trouver l'environnement, il renvoie Null et Errno affiche le message d'erreur.

Travailler sur le GETENV en C

Dans l'écosystème de Linux, la variable d'environnement peut être définie localement ou mondialement. Cette variable fournit la fonction à l'utilisateur final. Qui détermine comment les applications s'exécuteront sur le système d'exploitation Linux. Il existe de nombreuses façons de classer la variable d'environnement, comme la variable d'environnement peut également être appelée variable de coquille créée au niveau global ou local.

Le GETENV () fonctionne de telle manière qu'il recherche dynamiquement la variable d'environnement au moment de l'exécution dans chaque entrée avec le nom spécifique. Lorsqu'il est trouvé, il renvoie un pointeur à la valeur d'une variable. Le code source ou le programme doit être écrit de telle manière qu'il ne modifie pas la chaîne qui est adressée par le pointeur et renvoyée par GETENV (). De plus, le langage de programmation C ne crée pas une fonction qui définit ou modifie les variables d'environnement ou toute autre liste ou information dont l'utilisateur peut avoir besoin.

Déclaration de la fonction getenv ()

Char * getenv (const char * nom)

Valeur de retour

La fonction GETENV () renvoie le pointeur vers la chaîne C ayant une valeur de la variable d'environnement qui correspond à Env_Var. Un pointeur nul est retourné lorsqu'aucune correspondance n'est trouvée pertinente pour la demande. Ces variables d'environnement sont utiles pour tous les processus du système actuel, soit en multiprocesse. Ces variables contiennent des informations comme les chemins de temps de certains fichiers exécutables, un répertoire domestique ou un répertoire temporaire créé pour stocker certains fichiers temporaires.

Caractéristiques de GETENV ()

Les variables d'environnement se trouvent au niveau du système. Il existe de nombreuses façons d'utiliser les variables d'environnement dans le système d'exploitation Linux.

Env: Cette commande permet à l'utilisateur d'exécuter le programme dans l'environnement personnalisé. Lorsque la commande Env est utilisée sans les arguments comme paramètres, il affichera les options disponibles des variables dans le système.

Printinv: Cette commande fonctionne pour afficher toutes les variables du système environnemental.

Ensemble: Cette commande fonctionne pour définir la variable d'environnement dans le système d'exploitation Linux. Lorsque nous utilisons cette commande sans arguments, il imprime toutes les options variables, variables de shell et fonctions dans le système.

Exporter: La commande d'exportation définit les variables d'environnement. Mais c'est temporaire car il ne dure que lorsque la session dure. Si la session est déconnectée ou fermée, alors la variable n'est plus.

Toute la description concernant GETENV est mentionnée dans le manuel de Linux:

$ man getenv

Cela vous mènera à une page manuelle.

Nous partagerons quelques exemples qui afficheront la mise en œuvre de la fonction GETENV () dans le langage de programmation C dans l'environnement Linux. Pour tous les exemples, nous utiliserons un éditeur de texte de Linux pour écrire des codes et le terminal Linux pour les implémenter.

Exemple 1

Dans le code source, nous utilisons une bibliothèque pour assurer l'utilisation de cette fonctionnalité pour accéder à l'environnement. Ensuite, en utilisant la fonction GETENV () dans le programme principal, nous obtiendrons le chemin, la maison et la racine du système actuel.

À des fins d'implémentation, vous pouvez créer un utilisateur factice dans un environnement Linux. Mais pour le rendre précis, nous utilisons celui par défaut:

Printf ("Path:% sn", getenv ("path"));

Un format similaire est utilisé pour les deux autres caractéristiques de la maison et du chemin racine:

Maintenant, enregistrez le fichier texte avec l'extension de C. Si les informations concernant l'environnement seront disponibles, alors elle sera affichée. Cependant, s'il n'est pas trouvé, Null sera retourné.

Accédez à la borne Linux et utilisez un compilateur GCC. Ce compilateur est utilisé pour compiler le code puis l'exécuter:

$ gcc -o getenv getenv.c
$ ./ getenv

GETENV.C est le nom d'un fichier, et «-o» est utilisé pour enregistrer la sortie dans un fichier particulier mentionné dans la commande. La sortie affichera l'ensemble du chemin du fichier actuel et le nom du répertoire domestique. Comme la racine est inconnue, il est donc déclaré nul.

Exemple 2

L'exemple précédent était assez simple dans le cas des arguments. Cet exemple traite du pointeur utilisé pour accéder aux informations de l'environnement. Dans le programme principal, les paramètres contiennent l'argument et un pointeur. Car la boucle est utilisée pour afficher toutes les informations car le manuel affiche du temps consommé. Chaque emplacement de mémoire sera accessible et les informations seront récupérées. La boucle dure jusqu'à ce que la valeur d'index ne soit pas nul:

Voir la valeur résultante sur la compilation:

En exécution, vous verrez que chaque détail mineur dès le début de la création de l'environnement est affiché. Vous pouvez voir que le gestionnaire de session affichera les détails de la configuration de la boîte virtuelle. Ces informations seront très détaillées qui se termineront en affichant le nom d'utilisateur comme mentionné dans l'image ci-jointe:

Exemple 3

Une autre méthode d'utilisation de GETENV () est affichée ici. Un pointeur exploitera la fonction et la valeur de retour sera stockée dans le pointeur. Tout d'abord, introduisez un pointeur dans le programme principal. Ensuite, ce pointeur sera utilisé avec chaque fonction d'informations.

Str = getenv ("home")) ! = Null);

Cette déclaration montre que le chemin d'accueil sera affiché jusqu'à ce que la valeur devienne nul. Il en va de même pour les autres informations. Chaque valeur obtenue sera imprimée plus tard. La maison, le chemin et le nom du journal seront affichés en fonction des informations par défaut. Tous se réfèrent aux informations variables de l'environnement. Mais contrairement à cela, le quatrième est les données de choix de l'utilisateur.

Lors de l'exécution du code, nous verrons les valeurs résultantes. Les résultats du chemin d'accueil affichent le nom d'utilisateur dans le répertoire. La deuxième partie était pour le chemin de l'environnement. La troisième ligne affiche le nom du journal ou en réalité, le nom d'utilisateur. Maintenant, venez vers le choix de l'utilisateur, la valeur résultante n'est pas présente car elle ne sera pas trouvée. Donc, le null est retourné:

Exemple 4

Cet exemple affichera également le chemin uniquement mais via une approche différente. Tout d'abord, la valeur est obtenue via la fonction, puis, le troisième chemin obtenu sera affiché en appliquant une instance if pour vérifier si chaque information est affichée jusqu'à ce que le résultat du pointeur ne soit pas nul.

PTR_PATH = GETENV ("PATH");

Maintenant, voyez la valeur résultante à travers le terminal. Vous verrez que le chemin est affiché et obtenu via le code source:

Conclusion

L'article «Utilisation de la fonction GETENV» dans le langage de programmation C est expliqué avec quelques exemples pour aider l'utilisateur final en tant que guide de l'utilisateur. GETENV apporte l'environnement sous la forme de différentes manières. Chaque approche est expliquée qui aide à apporter le chemin, le nom d'utilisateur et la racine de l'environnement par défaut du système d'exploitation Linux. Nous espérons que vous avez trouvé cet article utile. Découvrez plus d'articles d'indice de Linux pour des conseils et des informations utiles.