English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico da Linguagem C

Controle de Fluxo da Linguagem C

Função do C

Array do C

Ponteiro do C

String do C

Estrutura da Linguagem C

Arquivo da Linguagem C

Outros C

Manual de Referência da Linguagem C

Uso e exemplo da função ungetc() da biblioteca C

Biblioteca padrão do C - <stdio.h>

Função da biblioteca C int ungetc(int char, FILE *stream) Empurre o caractere charUm caractere (um caractere sem sinal) é empurrado para o fluxo especificado stream Dentro, para que seja o próximo caractere lido.

Declaração

Aqui está a declaração da função ungetc().

int ungetc(int char, FILE *stream)

Parâmetros

  • char -- Este é o caractere a ser empurrado. O caractere é passado com seu valor int correspondente.
  • stream -- Este é um ponteiro para o objeto FILE, que identifica o fluxo de entrada.

Retorno

Se for bem-sucedido, retorna o caractere empurrado, caso contrário, retorna EOF e mantém o fluxo stream inalterado.

Exemplo Online

O exemplo a seguir demonstra o uso da função ungetc().

Exemplo Online

#include <stdio.h>

int main40;41;
{
   FILE *fp;
   int c;
   char buffer91;256];

   fp = fopen("file.txt", "r");
   if40; fp == NULL)
   {
      perror("Ocorreu um erro ao abrir o arquivo");
      return(-1);
   }
   while40;!feof(fp41;41;
   {
      c = getc(fp41;;
      /* Substitua ! por + */
      if40; c == '!')
      {
         ungetc('+', fp);
      }
      else
      {
         ungetc(c, fp);
      }
      fgets(buffer, 255, fp);
      fputs(buffer, stdout);
   }
   return(0);
}

Suponha que tenhamos um arquivo de texto file.txtSeu conteúdo é o seguinte. O arquivo será usado como entrada no exemplo:

isto é w3codebox
!biblioteca padrão C
!funções e macros da biblioteca

Vamos compilar e executar o programa acima, o que produzirá o seguinte resultado:

isto é w3codebox
+biblioteca padrão do C
+funções da biblioteca e macros

Biblioteca padrão do C - <stdio.h>