Le «Asprintf» est l'abréviation de «l'allocation d'impression de chaîne formatée». Le «Asprintf ()» donne la sortie dans la taille parfaite du tampon qui est alloué à l'intérieur de la fonction. Le «Asprintf» est identique au «printf» mais la seule différence entre cette commande et le printf est que son premier paramètre est une chaîne à laquelle la sortie doit être envoyée. Il termine la chaîne avec le caractère nul. Il rend la quantité totale de caractères, sauf le dernier null.
Dans ce guide, nous explorerons ce concept «asprintf ()» dans des détails profonds et ferons des exemples pratiques où nous utilisons la fonction «asprintf ()» dans la programmation C. Nous expliquerons également les exemples ici pour votre meilleure compréhension.
Syntaxe de la fonction ASPRINTF 3 dans le langage C
# int asprintf (char ** ret, const char * format,…);
L'argument initial est l'adresse d'un pointeur. Les 2 paramètres restants sont les mêmes que nous avons utilisés pour le printf ().
Exemple 1:
Les exemples donnés de ce guide sont exécutés dans Ubuntu 20.04. Par conséquent, GCC doit être installé pour Ubuntu 20.04 pour réaliser cela. Nous installons d'abord ce gcc. Après l'installation, nous créons du code dans le langage de programmation C pour démontrer comment fonctionne la fonction «asprintf ()».
Ici, nous utilisons l'ubuntu 20.L'éditeur de texte du 04 pour écrire du code. Nous ajoutons d'abord le fichier d'en-tête tel que «» au code suivant. Ce fichier d'en-tête est utilisé car il contient les informations pour inclure les fonctions d'entrée ou de sortie dans le code C. Nous avons la fonction «main ()», et ce type de données «int». Ensuite, nous avons un «tampon» et le type de données de ce «tampon» est «char». Ensuite, nous avons le type de données «int» et déclarons la variable «r» comme «int».
Maintenant, nous attribuons la fonction «asprintf ()» à cette «R». Dans cette fonction «asprintf ()», nous mettons l'adresse du «tampon», puis nous avons une ligne que nous voulons imprimer à l'écran. Le tampon est alloué et sa taille est correctement définie dans la méthode ASPRINTF () de sorte qu'il conserve la sortie après la mise en forme. Le débordement n'est pas concevable. Ensuite, nous utilisons la déclaration «put» qui est utilisée pour imprimer la ligne ou la chaîne sur le terminal. Le contenu du tampon est affiché. La valeur de retour de la méthode asprintf () qui est conservée dans la variable «R» est également imprimée. Cette valeur reflète la longueur de la chaîne retournée. Il est utilisé pour rendre le caractère de la chaîne. Dans la dernière partie de ce code, nous utilisons le «retour 0».
Ce qui suit est le résultat du code précédent. Nous utilisons le «G ++» ici. Le compilateur GNU prend en charge cette commande «G ++» et cette fonction «Asprintf» est compilée via cette commande que nous avons écrite dans la sortie. Vous pouvez facilement obtenir la sortie de ces codes en tapant les commandes qui sont affichées dans la capture d'écran suivante. Vous pouvez voir qu'il imprime le nombre total en ajoutant les nombres que nous avons insérés dans le code précédent. Comptez le caractère et affichez-le ici.
Exemple 2:
Maintenant, nous avons un autre exemple. Nous commençons notre code en mettant le «stdio. Fichier d'en-tête h ”. Ce fichier d'en-tête est utilisé car il contient les détails pour incorporer les fonctions d'entrée ou de sortie dans le code C. Ensuite, nous mettons le «main ()» du type de données «int». Après cette fonction «main ()», nous déclarons une variable nommée «my_string» et «char» qui représentent le type de données de cette variable.
Après cela, nous utilisons la fonction «asprintf ()» et mettons l'adresse du «my_string». Nous mettons également une chaîne que nous voulons rendre à l'écran. Ici, nous mettons le «% d» qui est utilisé pour les nombres entiers. Il obtient l'entier qui est écrit à l'intérieur de la fonction «Asprintf ()». Ensuite, nous utilisons l'instruction «put» qui est utilisée pour imprimer l'instruction donnée sur l'écran de sortie. Le contenu du «my_string» est rendu sur le terminal.
En dessous, nous utilisons à nouveau la fonction «asprintf ()» et passons à nouveau l'adresse de la variable char à l'intérieur de cette «asprintf ()». Nous utilisons le «% s» qui représente les données de chaîne. Il obtient les données de chaîne que nous donnons à la fin de cette fonction «asprintf ()». Pour disputer cela sur l'écran de sortie, nous utilisons l'instruction «put». Dans l'instruction «put», nous utilisons le nom de la variable char «my_string». À la fin de ce code, nous mettons l'instruction «retour 0», puis fermons le support de la fonction principale ().
Regardez la sortie suivante. Vous pouvez remarquer qu'il imprime «4» à la place de «% d» et imprime le «gâteau» à la place du «% s». Nous obtenons cette sortie en tapant les commandes «G ++». Nous avons déjà discuté de cette commande «G ++» dans notre code précédent.
Conclusion
L'objectif principal de ce guide est de démontrer comment utiliser la fonction de programmation C «Asprintf ()». Le but, l'utilisation et les résultats de la fonction «asprintf ()» ont été discutés dans ce guide. La fonction «asprintf ()» C est déjà discutée ici. Comme nous l'avons discuté, la fonction «asprintf ()» en C est utilisée pour donner la sortie dans la taille parfaite du tampon qui est alloué à l'intérieur de la fonction. Nous avons regardé les multiples exemples ici. La sortie de chaque exemple de ce guide, ainsi que les codes de programmation C pour l'utilisation de la fonction «asprintf ()», sont affichées. Nous espérons qu'après avoir soigneusement et profondément étudié ce guide, vous aurez une bonne connaissance de la fonction «asprintf ()».