Fonction Getopt 3 C

Fonction Getopt 3 C
La fonction getOpt () est une fonction intégrée en programmation C, et nous l'utilisons pour l'analyse des arguments en ligne de commande dans le langage de programmation C. Lorsque nous voulons analyser les arguments en ligne de commande, nous utilisons cette fonction «getOpt ()» là-bas. Cette fonction «getOpt ()» peut être utilisée comme déclaration conditionnelle à l'intérieur de la boucle. Lorsque la méthode «getOpt ()» renvoie -1, la boucle est terminée. Avec la valeur donnée par la fonction "getOpt ()", une instruction Switch est ensuite mise en œuvre. Les arguments supplémentaires restants qui ne peuvent pas être gérés dans la première boucle sont exécutés dans une deuxième boucle.

Dans cet article, nous utiliserons cette fonction «getOpt ()» dans notre programme C et expliquerons également le fonctionnement de cette fonction «getOpt ()».

Syntaxe de la fonction Getopt 3 dans le langage C



Nous avons un entier «int» nommé «Argc». Le «char» est nommé «const argv []», qui est un tableau, ainsi que le «const char» nommé «Optsstring». Cette optsstring n'est qu'une série de caractères, chacune étant une seule option.

Exemple 1

Dans cet article, ces exemples donnés sont exécutés sur Ubuntu 20.04. Par conséquent, pour exécuter cela, Ubuntu 20.04 Le GCC a-t-il installé. Après l'avoir installé, nous rédigerons du code dans notre langage de programmation C pour vous montrer le fonctionnement de la fonction «getOPT ()». Ici, nous écrivons des codes dans l'éditeur de texte d'Ubuntu 20.04. Tout d'abord, nous ajoutons d'abord plusieurs fichiers d'en-tête au code fourni ci-dessous, comme «», qui est utilisé pour l'impression à l'écran.

Ensuite, nous utilisons le fichier d'en-tête «», qui est utilisé pour donner accès à l'API du système d'exploitation «POSIX». Maintenant, nous avons une fonction «main ()» et transmettre des paramètres à cette fonction principale () comme «argc» du type de données «int» et du tableau «argv []» de type de données «char». À l'intérieur de cette fonction «main ()», nous avons «opt» et c'est aussi un type de données «int». Après cela, nous avons une boucle «while» et nous utilisons la fonction «getOpt ()» comme condition de cette boucle. Nous mettons la «opt» ici et l'initialisons avec la fonction «getOpt ()». Et nous mettons la condition ici que cette fonction «getOpt ()» n'est pas égale à «-1».

Ensuite, nous avons une instruction «Switch» dans laquelle nous passons «opt» comme paramètre. Ensuite, nous avons des cas différents. Il vérifie ces conditions si le premier cas n'est pas satisfait, puis il passe au cas suivant. Si l'affaire est vraie et satisfaite, la déclaration à l'intérieur sera exécutée et nous avons la déclaration «Break». Nous avons la déclaration «printf» dans tous ces cas de l'instruction Switch. Dans le cas de «L», «H» et «M», nous avons mis la déclaration «printf» qui imprime le «caractère» sur l'écran de sortie. Dans le cas de «F», il imprime le «nom de fichier».

Nous mettons le «:» au début de la chaîne afin qu'il puisse facilement distinguer «:» et «?". S'il n'y a plus d'alternatives au processus, le résultat est «-1». Le "?”S'affiche lorsqu'une option n'est pas reconnue et est stockée dans la variable externe Optopt. Le getopt revient généralement si une option attend une valeur (comme -f dans notre exemple) mais aucune n'est fournie. Nous avons également la boucle «pour» qui est ici pour les arguments supplémentaires qui ne sont pas analysés. Dans l'instruction «IF», ​​nous avons la déclaration «printf» qui est utilisée pour imprimer l'instruction donnée sur l'écran du terminal.



Voici le résultat final du script aérien, et vous verrez comment cette fonction fonctionne ici. Nous obtenons cette sortie en tapant les commandes, qui sont affichées dans la capture d'écran suivante:

Exemple n ° 2

Ici, nous avons un autre exemple dans lequel nous utilisons les fichiers d'en-tête. Les fichiers d'en-tête que nous utilisons ici sont «STdio. h ”et« getopt. h ”. Pour la lecture et l'écriture de caractères dans les fichiers, le "STdio. Le fichier d'en-tête h ”est utilisé. Nous avons la fonction «Main» de type «int» où nous passons deux paramètres en tant que types de données «int» et «char».

Ensuite, nous ouvrons les accolades bouclées de la fonction «principale» et déclarons et initialisons «l'indice d'option» comme type de données «int». Le type de données «char» est nommé «user_name» et initialisé avec «null». Après cela, nous avons mis la boucle «while» et nous avons attribué la fonction «getOpt ()» à cette «option_index». Ci-dessous, nous avons l'instruction Switch et passons cette "Option_index" à cette instruction Switch et différents cas de cette instruction Switch sont ici. Dans le premier cas «U», nous avons deux déclarations «printf», et nous avons mis la déclaration «Break» ici. Dans le cas de "G", nous ne mettons qu'une seule déclaration "printf", puis nous avons "Break". Nous devons «casser» après chaque cas de l'instruction Switch.

Maintenant, nous utilisons également le «par défaut». Cela ne s'exécutera que lorsque toutes les conditions ne seront pas remplies. Si tous les cas sont faux, cette instruction «par défaut» sera exécutée. Nous avons également mis l'instruction «printf» dans cette instruction «par défaut», puis fermons tous les supports.


Ci-dessous, la sortie du deuxième exemple. Le code précédent donne la sortie qui est indiquée dans la capture d'écran suivante:

Conclusion

L'objectif principal de cet article est de vous montrer comment utiliser la fonction de programmation C "getOPT ()". Dans cet article, nous avons examiné la fonction «getOpt ()» et couvert son objectif, sa justification, son utilisation et ses résultats. Cet article a déjà couvert la fonction «getOpt ()» en C. Dans la programmation C, la fonction «getOpt ()» est utilisée pour l'analyse des arguments en ligne de commande en C, comme nous l'avons déjà discuté. Ici, nous avons examiné plusieurs exemples. La sortie de chaque exemple de cet article a également été affichée, ainsi que les codes de programmation C pour l'utilisation de la fonction "getOpt ()". Après avoir soigneusement lu cet article, nous sommes convaincus que vous aurez une interprétation ferme du «getOPT ()».