Maison  >  Article  >  développement back-end  >  Quel est le rôle de la fonction de sortie de chaîne en langage C puts()

Quel est le rôle de la fonction de sortie de chaîne en langage C puts()

coldplay.xixi
coldplay.xixioriginal
2020-12-21 10:55:335150parcourir

Les fonctions de la fonction de sortie de chaîne en langage C puts() : 1. [puts()] ajoutera automatiquement un caractère de nouvelle ligne à la fin d'une chaîne lors de son affichage. 2. [puts()] rencontre un caractère ; chaîne vide La sortie s'arrête lorsqu'un caractère est atteint, vous devez donc vous assurer qu'il y a des caractères nuls.

Quel est le rôle de la fonction de sortie de chaîne en langage C puts()

[Recommandations d'apprentissage associées : Vidéo du didacticiel sur le langage C]

C Le rôle de la fonction de sortie de chaîne de langage puts() :

  • puts() ajoutera automatiquement un caractère de nouvelle ligne à la fin de la chaîne lorsqu'elle s’affiche.

  • puts() arrête la sortie lorsqu'elle rencontre un caractère nul, vous devez donc vous assurer qu'il existe un caractère nul. ​

Les deux exemples suivants illustrent respectivement les deux caractéristiques de puts().

Exemple 1 :

/* put_out.c -- using puts() */
#include <stdio.h>
#define DEF "I am a #defined string."
int main(void)
{
    char str1[80] = "An array was initialized to me.";
    const char * str2 = "A pointer was initialized to me.";
 
    puts("I&#39;m an argument to puts().");
    puts(DEF);
    puts(str1);
    puts(str2);
    puts(&str1[5]);
    puts(str2+4);
 
    return 0;
}</stdio.h>

Le résultat de ce programme est le suivant :

I&#39;m an argument to puts().
I am a #defined string.
An array was initialized to me.
A pointer was initialized to me.
ray was initialized to me.
inter was initialized to me.

Comme indiqué ci-dessus, chaque chaîne est sur sa propre ligne car puts() ajoutera automatiquement un caractère de nouvelle ligne à la fin.

Exemple 2 :

/* nono.c -- no! */
#include <stdio.h>
int main(void)
{
    char side_a[] = "Side A";
    char dont[] = {&#39;W&#39;, &#39;O&#39;, &#39;W&#39;, &#39;!&#39; };
    char side_b[] = "Side B";
 
    puts(dont);   /* dont is not a string */
 
    return 0;
}</stdio.h>

Ce qui suit est un exemple de ce programme. Le résultat peut être différent à chaque exécution. Le contenu généré par le compilateur peut être différent :

WOW!Side A
.

Comment puts() sait-il où s'arrêter ? Cette fonction arrête la sortie lorsqu'elle rencontre un caractère nul. Comme il ne manque pas de caractère nul de fin, ce n'est pas une chaîne, donc puts() ne sait pas où s'arrêter. Il continuera à imprimer le contenu en mémoire après ne pas le faire jusqu'à ce qu'un caractère nul soit trouvé. Afin de permettre à puts() de lire le caractère nul le plus rapidement possible, nous mettons dont entre side_a et side_b Ce qui précède est un exemple fonctionnel du programme. Différents compilateurs peuvent produire un contenu différent

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn