Функции библиотеки C - ungetc ()
C стандартная библиотека - <stdio.h>
описание
C библиотечные функцииINT ungetc (INT символьные, FILE * поток) Символ символ (символбез знака) проталкивается в указанныйпотокпоток таким образом , что он находится рядом с читаться в символы.
заявление
Вот декларация ungetc функции () в.
int ungetc(int char, FILE *stream)
параметры
- символ - который должен быть выдвинут в символы.Характер его соответствующего значения Int пройдена.
- Поток - это указатель на FILE указатель на объект, входного файла потока идентификатора объекта.
Возвращаемое значение
В случае успеха, он возвращает проталкивается в символ, в противном случае, возвращает EOF, а поток поток остается неизменным.
примеров
Следующий пример демонстрирует ungetc () функция используется.
#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); }
Предположим , у нас есть текстовый файлfile.txt, он звучит следующим образом .В качестве примера файла, введите следующую команду:
this is w3cschool !c standard library !library functions and macros
Давайте скомпилировать и запустить эту программу, которая приведет к следующему:
this is w3cschool +c standard library +library functions and macros +library functions and macros