std:: getchar
| I/O manipulators | ||||
| Print functions (C++23) | ||||
| C-style I/O | ||||
| Buffers | ||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(C++20)
|
||||
| Streams | ||||
| Abstractions | ||||
| File I/O | ||||
| String I/O | ||||
| Array I/O | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
| Synchronized Output | ||||
|
(C++20)
|
||||
| Types | ||||
| Error category interface | ||||
|
(C++11)
|
||||
|
(C++11)
|
| Types and objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Определено в заголовке
<cstdio>
|
||
|
int
getchar
(
)
;
|
||
Считывает следующий символ из stdin .
Эквивалентно std:: getc ( stdin ) .
Содержание |
Параметры
(нет)
Возвращаемое значение
Полученный символ при успехе или EOF при неудаче.
Если сбой вызван условием конца файла, дополнительно устанавливает индикатор eof (см. std::feof() ) на stdin . Если сбой вызван другой ошибкой, устанавливает индикатор error (см. std::ferror() ) на stdin .
Пример
std::getchar
с проверкой ошибок. Выход из программы при вводе символа ESC.
#include <cctype> #include <cstdio> #include <cstdlib> #include <iomanip> #include <iostream> int main() { for (int ch; (ch = std::getchar()) != EOF ;) // чтение/вывод "abc" из stdin { if (std::isprint(ch)) std::cout << static_cast<char>(ch) << '\n'; if (ch == 27) // 'ESC' (escape) в ASCII return EXIT_SUCCESS; } // Проверка причины достижения EOF. if (std::feof(stdin)) // если сбой вызван условием конца файла std::cout << "Достигнут конец файла\n"; else if (std::ferror(stdin)) // если сбой вызван другой ошибкой { std::perror("getchar()"); std::cerr << "getchar() завершился ошибкой в файле " << std::quoted(__FILE__) << " в строке # " << __LINE__ - 14 << '\n'; std::exit(EXIT_FAILURE); } return EXIT_SUCCESS; }
Возможный вывод:
abc a b c ^[
Смотрите также
|
получает символ из файлового потока
(функция) |
|
|
Документация C
для
getchar
|
|