Прототип функции getc:
int getc ( FILE * filestream );
Заголовочный файл
Название | Язык |
---|---|
stdio.h | С |
cstdio | С++ |
Описание
Функция возвращает символ из потока filestream
, на который ссылается внутренний индикатор позиции файла. Внутренний индикатор позиции в файле, после срабатывания этой функции сдвигается на один символ, таким образом, теперь он указывает на следующий символ.
Функция getc
эквивалентна функции fgetc
и также принимает поток через параметр, но getc
может быть определена как макрос, поэтому, передаваемый ей аргумент, не должен быть выражением.
Смотреть подобную функцию, без параметров — getchar
.
Параметры:
- filestream
Указатель на объект типаFILE
, который идентифицирует поток, для выполнения с ним различных операций.
Возвращаемое значение
Считанный символ возвращается в виде целого значения.
Если конец файла достигнут или в процессе чтения происходит ошибка, функция возвращает EOF
и соответствующие индикаторы ошибки или конца файла устанавливаются. Вы можете использовать любую функцию ferror
или feof
чтобы определить, произошла ошибка или был достигнут конец файла.
Пример: исходный код программы
//пример использования функции getc #include <iostream> #include <cstdio> int main () { FILE * ptrFile = fopen("file.txt","r"); int c; int counter = 0; if (ptrFile == NULL) perror ("Ошибка открытия файлаn"); else { do { c = getc(ptrFile); if (c == '$') counter++; } while (c != EOF); // пока не конец файла fclose (ptrFile); std::cout << "Файл содержит " << counter << " знаков доллараn"; } return 0; }
Пример работы программы
Эта программа читает существующий файл с именем file.txt
посимвольно и использует переменную n для подсчета символ доллара ($), которые содержит файл.
Комментарии