Поделиться через


getc, getwc

Чтение знаков из потока.

int getc( 
   FILE *stream 
);
wint_t getwc( 
   FILE *stream 
);

Параметры

  • stream
    Входной поток.

Возвращаемое значение

Возвращает символ для чтения.Показать ошибки чтения или конца файла getc возвращает EOFи getwc возвращает WEOF.Для getcиспользование ferror OR feof проверка на ошибки или конца файла.If stream существует NULL" getc и getwc вызовите недопустимый обработчик параметра, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то эти функции возвращают EOF (или WEOF дляgetwc) и set errno В EINVAL.

См. _doserrno, errno, _sys_errlist и _sys_nerr дополнительные сведения об этих и других, кодов ошибок.

Заметки

Каждая процедура считывает один знак из файла в текущей позиции и увеличивает на единицу соответствующий указатель файла (если указано), то для указания к следующему знаку.Файл, связанный с stream.

Эти функции блокируют вызывающий поток и поэтому потокобезопасным.Для non-блокируя версий см. в разделе _getc_nolock, _getwc_nolock.

Примечания Подпрограмма-специфического.

Процедура

Заметки

getc

Аналогично fgetcфункция, но реализуется как и в качестве макроса.

getwc

Версия расширенных символов getc.Считывает многобайтовый символ или расширенный в соответствии с если символ stream откроется в режиме текст или binary.

Сопоставления подпрограммы Родов-Текста

Подпрограмма TCHAR.H

_MBCS не заданные _UNICODE &

Указанный символ _MBCS

Указанный _UNICODE

_gettc

getc

getc

getwc

Требования

Процедура

Обязательный заголовок

getc

<stdio.h>

getwc

<stdio.h> OR <wchar.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Пример

// crt_getc.c
// Use getc to read a line from a file.

#include <stdio.h>

int main()
{
    char buffer[81];
    int i, ch;
    FILE* fp;
    
    // Read a single line from the file "crt_getc.txt". 

    fopen_s(&fp, "crt_getc.txt", "r");
    if (!fp)
    {
       printf("Failed to open file crt_getc.txt.\n");
       exit(1);
    }

    for (i = 0; (i < 80) && ((ch = getc(fp)) != EOF)
                         && (ch != '\n'); i++)
    {
        buffer[i] = (char) ch;
    }
       
    // Terminate string with a null character 
    buffer[i] = '\0';
    printf( "Input was: %s\n", buffer);

    fclose(fp);
}

Вход: crt_getc.txt

Line one.
Line two.

5231d02a.collapse_all(ru-ru,VS.110).gifOutput

Input was: Line one.

Эквивалент в .NET Framework

См. также

Ссылки

Поток ВВОДА-ВЫВОДА

fgetc, fgetwc

_getch, _getwch

putc, putwc

ungetc, ungetwc