Comment passer une structure à une fonction en c

Comment passer une structure à une fonction en c
Une structure a été largement utilisée comme type de données défini par l'utilisateur dans la langue C. Le but de l'utilisation de structures en C est de créer un seul type de données qui serait utilisé pour regrouper diverses variables ou éléments de type de données en un seul type. La structure a été utilisée comme variable globale afin que toutes les fonctions puissent y accéder facilement. Cela signifie qu'il ne peut pas être déclaré dans la méthode principale afin que nous puissions l'utiliser n'importe où.

Syntaxe struct:

La déclaration de structure est indiquée dans l'image ci-dessous. Il commence par le mot-clé «structure» avec tout nom de structure qui lui a été donné. Dans le corps d'une structure, nous pouvons définir de nombreuses variables de tout type. Le corps de la structure serait fermé avec «;». Pour passer une fonction, nous utiliserons deux méthodes dans ce guide. Regardons les deux méthodes.

Exemple 01: passer la structure à une fonction par valeur

La première méthode pour transmettre une structure à une fonction est via la valeur. Utilisons cette méthode pour créer un fichier C dans le shell à l'aide d'une requête tactile.

$ touch exp.c

Après avoir créé un fichier, vous devez l'ouvrir dans un éditeur, je.e., GNU Nano Editor, en utilisant la commande indiquée ci-dessous.

$ nano exp.c

Une fois le fichier ouvert, écrivez le code dans le fichier comme indiqué dans l'image. La première ligne contient l'en-tête. Une structure «humaine» a été déclarée avec deux variables. L'un est la variable de caractère «nom» de taille «30». Un autre est une variable de type entier utilisé pour stocker l'âge d'un humain. L'entrée a été fournie par un utilisateur au moment d'exécution en utilisant la méthode ScanF. Cette entrée a été enregistrée aux variables de la structure à l'aide des objets. Après cela, la structure a été transmise à la méthode définie par l'utilisateur Show () comme un argument. C'est un appel de fonction à la méthode show (). La méthode Show a pris la structure dans son paramètre comme valeur. Les valeurs de variable de structure ont été affichées sur la console via l'instruction PRINTF utilisée dans la fonction définie par l'utilisateur Show ().

Enregistrez votre fichier à l'aide de la clé de raccourci Ctrl + S. Après cela, je suis revenu au terminal en utilisant le raccourci «Ctrl + X». Nous devons d'abord compiler le code indiqué ci-dessus. Le compilateur «GCC» a été utilisé à cet effet. En fin de compte, l'exécution d'un fichier a lieu. L'utilisateur a ajouté son nom et son âge. La structure a été transmise pour montrer () la méthode comme valeur. Les valeurs de la structure ont été affichées ci-dessous.

$ gcc exp.c
$ . /un.dehors

Une sortie réussie peut être vue sur la fenêtre du terminal d'Ubuntu 20.04.

Exemple 02: Passez la structure à une fonction par référence

Maintenant, commençons par cette illustration. Dans cet exemple, nous examinerons la structure qui sera transmise à une méthode définie par l'utilisateur via référence. Dans cette méthode, toute la structure ou les valeurs n'a pas été transmise à une autre fonction. L'adresse mémoire de la structure de la variable serait transmise à la méthode comme référence. Nous avons donc ouvert le même fichier, «Exp.C ”pour le mettre à jour. Inclus l'en-tête standard d'entrée-sortie. Nous avons créé une nouvelle structure nommée «Cal» ayant deux variables de type entier n1 et n2. L'objet de référence de la structure «cal» a été créé. Le prototype de fonction de la méthode «sum ()» a été déclaré avant la méthode principale.

La fonction principale contient la méthode Scanf () pour contracter les entrées de l'utilisateur à l'heure d'exécution. Les valeurs ont été transmises aux variables de structure par référence en utilisant leurs adresses de mémoire. Le signe «&» a été utilisé ici pour lier les adresses mémoire des variables de structure avec les valeurs saisies par l'utilisateur. L'adresse et les valeurs d'un objet variable «C» et «Total» ont été transmises à la fonction «Sum» comme référence.

La fonction «somme» a obtenu les valeurs des variables de structure N1 et N2 par référence de l'objet «C» et les additionnant. Les valeurs résultantes ont été enregistrées dans la variable n1. La méthode principale affiche la somme des deux variables.

Compiler et exécuter le code. L'utilisateur a ajouté deux nombres et la somme des deux nombres a été affichée. Le GCC et «A.Les commandes ont été utilisées ici.

$ gcc exp.c
$ . /un.dehors

Une sortie réussie peut être vue sur la fenêtre du terminal d'Ubuntu 20.04.

Conclusion:

Cet article contient la mise en œuvre d'une structure de passage à une fonction définie par l'utilisateur dans le langage C. Deux approches ont été utilisées à cette fin, je.e., par valeur et référence. Tout en apprenant à passer une structure pour fonctionner dans le langage de programmation C, vous pouvez utiliser les deux méthodes. Nous espérons que cet article vous aidera à son meilleur à comprendre le concept de la structure de passage à toute fonction définie par l'utilisateur dans la programmation C.