Latest web development tutorials

fonctions de la bibliothèque C - ungetc ()

C bibliothèque standard - <stdio.h> C bibliothèque standard - <stdio.h>

description

fonctions de la bibliothèque Cint ungetc (int char, FILE * stream) Le charde caractères(uncaractère non signé) est poussé dans lecourantde flux spécifié de sorte qu'il est à côté de lire dans les personnages.

déclaration

Voici la déclaration de ungetc () fonction.

int ungetc(int char, FILE *stream)

Paramètres

  • omble - qui doit être poussé dans les caractères.Le caractère de sa valeur int correspondante passée.
  • flux - Ceci est un pointeur sur FILE pointeur sur un objet, le flux d'entrée FILE identificateur d'objet.

Valeur de retour

En cas de succès, il retourne poussé dans le caractère, sinon, retourne EOF, et le courant d'écoulement reste inchangé.

Exemples

L'exemple suivant montre ungetc () est utilisée.

#include <stdio.h>

int main ()
{
   FILE *fp;
   int c;
   char buffer [256];

   fp = fopen("file.txt", "r");
   if( fp == NULL ) 
   {
      perror("打开文件时发生错误");
      return(-1);
   }
   while(!feof(fp)) 
   {
      c = getc (fp);
      /* 把 ! 替换为 + */
      if( c == '!' ) 
      {
         ungetc ('+', fp);
      }
      else 
      {
         ungetc(c, fp);
      }
      fgets(buffer, 255, fp);
      fputs(buffer, stdout);
   }
   return(0);
}

Supposons que nous ayons unfile.txt de fichier texte,il se lit comme suit. À titre d'exemple du fichier, entrez:

this is w3cschool
!c standard library
!library functions and macros

Nous allons compiler et exécuter le programme ci-dessus, qui se traduira par ce qui suit:

this is w3cschool
+c standard library
+library functions and macros
+library functions and macros

C bibliothèque standard - <stdio.h> C bibliothèque standard - <stdio.h>