Comment utiliser la fonction ATexit dans le langage C.

Comment utiliser la fonction ATexit dans le langage C.
Si vous effectuez un processus dans votre système d'exploitation Linux et tout ce que vous voulez avoir une terminaison de processus normale, vous devez utiliser la fonction ATexit dans votre code. La fonction ATexit vous permet d'enregistrer une fonction qui est utilisée pour être appelée dans la terminaison de processus normale avant l'exécution du code. C'est une fonction de bibliothèque C. Si cette fonction est appelée plusieurs fois, chaque appel spécifie une fonction d'atexit différente. Ils sont tous mis en œuvre dans l'ordre opposé comme une pile (je.e., La dernière fonction indiquée est la première à être effectuée à la sortie). Nous allons discuter des méthodes pour faire tout cela avec vous dans cet article.

Remarque: nous utiliserons Ubuntu 20.04 pour effectuer le processus spécifique et sa fonction ATexit.

Fonctionnement de la fonction ATexit:

Cette fonction atexiste enregistrera une fonction que vous souhaitez l'appeler dans le processus principal. Cela provoque la fin du programme normal. Après l'exécution, s'il renvoie 0, cela signifie que l'appel de fonction est réussi. S'il retourne -1 ou toute autre valeur, la fonction ATexit n'a pas réussi à appeler la fonction enregistrée si un fichier open-source est ouvert. En revanche, la fonction de terminaison, atexit, fermera tous ces fichiers au moment de l'exécution.

Étape n ° 1: Créez un éditeur de texte pour écrire un programme:

Avant d'exécuter une fonction ATexit, vous devez d'abord créer un programme de langue C dans l'éditeur de texte de votre serveur Linux, en utilisant la commande suivante à votre terminal Linux.

$ gedit

L'utilitaire «Gedit» prendra un peu de temps à ouvrir, après quoi vous pourrez l'utiliser immédiatement. Il permettra d'ouvrir un éditeur de texte dans lequel vous pouvez écrire votre code. L'éditeur de texte apparaîtra comme l'image ci-dessous:

Étape # 2: Code A C programme C à l'aide de la fonction ATexit dans l'éditeur de texte:

Pour utiliser la fonction ATexit, vous devez d'abord écrire un simple code de langue C pour y appliquer la fonction. Il y a un code de langue C dans l'image ci-dessous dans laquelle il y a deux fonctions que l'une est dans la classe principale, et une autre est enregistrée dans l'appel de la fonction atexiste.

Enregistrez ce code d'image ci-dessus avec n'importe quel nom en utilisant le code d'extension.c. Ce format montre qu'il s'agit d'un code de langue C, et il vous permet de montrer les fonctions et la bibliothèque du langage C ci-dessous est l'exemple.

Étape # 3: Exécutez le processus pour vérifier la sortie du programme:

Pour exécuter le code, vous devez d'abord revenir au terminal du serveur Linux. Pour l'exécution, vous devez donner la commande du «test gcc -o» et le nom du fichier C créé. Voici la commande ci-dessous:

$ GCC -O Code de test.c

Cela vous montrera une erreur si le compilateur GCC n'est pas installé dans votre système.

Vous devez maintenant installer GCC en donnant à la commande «sudo apt install gcc» sur votre terminal Linux comme indiqué ci-dessous:

En appuyant sur la touche Entrée, il commencera à installer GCC dans votre serveur Linux. Cela prendra du temps; Après cela, il vous demandera d'entrer oui / non, à ce moment-là. Vous devez entrer oui; Ensuite, il commencera à afficher la progression du téléchargement du compilateur GCC comme indiqué dans l'image ci-dessous:

Dès que vous avez installé le compilateur GCC sur votre serveur Linux, vous pouvez compiler avec succès votre code. Pour obtenir la sortie finale, vous devez utiliser le. / Test Commande comme ci-dessous:

Cette commande affichera la sortie de votre code. Vous pouvez afficher la sortie de votre code dans l'image ci-dessous.

Comme indiqué ci-dessus, «Existant avec succès» est la fonction créée enregistrée et appelée par la fonction ATexit dans le code principal du programme. Cette sortie montre que la fonction s'est enregistrée avec succès. S'il n'est pas enregistré, il donnera la sortie à -1.

Un autre exemple de fonction ATexit à l'aide de plusieurs fonctions enregistrées à appeler:

Pour savoir plus clairement comment cette fonction fonctionne, vous pouvez avoir un autre exemple avec une exécution de code différente. Répétez le même processus pour écrire un code comme mentionné ci-dessus en utilisant la commande «gedit» pour ouvrir l'éditeur de texte et après avoir écrit votre code, enregistrez-le avec n'importe quel nom en mentionnant le .C extension. Comme indiqué dans l'image ci-dessous, vous pouvez afficher que les multiples fonctions sont appelées par la fonction ATexit dans le même programme.

Dans l'image ci-dessus, vous pouvez voir que trois fonctions vides sont appelées et enregistrées en utilisant la fonction ATexit dans le code principal. Pour obtenir la sortie de ce code, vous devez effectuer la même commande que mentionnée précédemment. Ouvrez le terminal de votre serveur Linux et exécutez la commande «Test GCC -O» avec le fichier créé plus tôt. Après la compilation réussie du code, vous devez exécuter les instructions citées suivantes dans le terminal.

$ ./test

Ici, vous pouvez voir que les trois fonctions appelées sont enregistrées et fonctionnent avec succès.

Quelques utilisations spécifiques de la fonction «ATexit»:

Ci-dessus, nous avons vu un serveur Linux très complet en utilisant la fonction ATexit pour normaliser le code exécuté et nous avons souhaité l'état ATEXIT. Lorsque plusieurs fonctions sont enregistrées avant la résiliation du code, vous devez utiliser plusieurs fonctions ATexit pour appeler chaque fonction enregistrée.

Conclusion:

L'article, comme mentionné précédemment, montre l'utilisation de la fonction ATexit dans la langue C. Nous avons utilisé le compilateur GCC pour compiler l'exemple de code lié à la fonction ATexit dans le serveur Linux. Dans l'article ci-dessus, il existe plusieurs exemples pour comprendre l'utilisation de la fonction ATexit et comment il fonctionne dans Linux. Maintenant, tout ce que vous avez à faire est de profiter de cet article pour utiliser la fonction ATexit dans votre serveur Linux.