Dans cet article, nous expliquerons la syntaxe, les paramètres, les valeurs de retour et le fonctionnement de snprintf () fonction en c++. On peut trouver une compréhension complète de snprintf () dans ce guide.
Qu'est-ce que snprintf () en C++
En c++, snprintf () est une fonction utilisée pour formater ou stocker une série de valeurs de caractère et de chaîne écrites dans le tampon. Il fonctionne de manière similaire à sprintf () fonction mais il a la capacité de surmonter les débordements de tampon. Le Le fichier d'en-tête comprend le snprint () fonction et il doit être déclaré si vous souhaitez utiliser la fonction dans votre programme. Le snprintf () La fonction spécifie le contenu maximum que le tampon pourrait avoir.
Le donné ci-dessous est la syntaxe à utiliser snprintf () Fonction dans C ++:
snprintf (char * tampon, size_t buf_size, const char * format,…);
Une fois les personnages écrits, un caractère nul final est inséré. Si max_bufSize est nul, rien n'est stocké et le tampon peut agir comme un pointeur nul.
Paramètres de snprintf ()
Voici les paramètres utilisés dans snprintf () fonction.
Il devrait y avoir un minimum de nombreux paramètres qu'il existe des valeurs de spécificateur de format. La fonction ignore tout argument supplémentaire.
Qu'est-ce que Snprintf () renvoie
Si la fonction réussit, elle renvoie le nombre de caractères qui seraient considérés comme écrits pour un tampon approprié, à l'exclusion d'un caractère nul de terminaison. Quand il échoue, il donne une valeur négative. La sortie sera considérée comme complètement écrite si et seulement si une valeur renvoyée est non négative et est plus petite que max_bufsize.
Comment utiliser snprintf () en c++
Voici un exemple d'utilisation de snprintf () en C ++:
Exemple
#inclure
#inclure
Utilisation de Namespace Std;
int main()
char buff_size [60];
int retour_value, max_bufSize = 60;
char str [] = "Linuxhint";
Int articles = 45;
return_value = snprintf (buff_size, max_bufSize, "Hello% s utilisateurs, lisons% d articles sur bash", str, articles);
if (return_value> 0 && return_value < MAX_BUFSIZE)
couter << buff_size << endl;
couter << "Number of characters written = " << return_Value << endl;
autre
couter << "Error writing to buffer" << endl;
retour 0;
Dans le code ci-dessus, nous avons réglé la taille maximale du tampon à 60. Cela signifie que le code acceptera les caractères pas plus de 60. Nous avons utilisé le snprintf () Fonction pour sortir une chaîne qui a 56 caractères et elle sera affichée au terminal de sortie. Dans le cas où vos caractères entrés sont supérieurs à 60 ans, le programme sera à travers une erreur.
Conclusion
Nous avons démontré le prototype, les paramètres, les valeurs de retour et le travail du C++ snprintf () Fonction qui écrit une chaîne formatée à un tampon de chaîne de caractères. Nous avons décrit un exemple avec une compréhension complète de snprintf () dans ce guide.