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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definido en el encabezado
<cstdio>
|
||
|
int
getchar
(
)
;
|
||
Lee el siguiente carácter de stdin .
Equivalente a std:: getc ( stdin ) .
Contenidos |
Parámetros
(ninguno)
Valor de retorno
El carácter obtenido en caso de éxito o EOF en caso de fallo.
Si el fallo ha sido causado por una condición de fin de archivo, establece adicionalmente el indicador eof (ver std::feof() ) en stdin . Si el fallo ha sido causado por algún otro error, establece el indicador de error (ver std::ferror() ) en stdin .
Ejemplo
std::getchar
con verificación de errores. Salir del programa ingresando el carácter ESC.
#include <cctype> #include <cstdio> #include <cstdlib> #include <iomanip> #include <iostream> int main() { for (int ch; (ch = std::getchar()) != EOF ;) // leer/imprimir "abc" desde stdin { if (std::isprint(ch)) std::cout << static_cast<char>(ch) << '\n'; if (ch == 27) // 'ESC' (escape) en ASCII return EXIT_SUCCESS; } // Probar la razón por la que se alcanzó EOF. if (std::feof(stdin)) // si el fallo fue causado por condición de fin de archivo std::cout << "Se alcanzó el fin del archivo\n"; else if (std::ferror(stdin)) // si el fallo fue causado por algún otro error { std::perror("getchar()"); std::cerr << "getchar() falló en el archivo " << std::quoted(__FILE__) << " en la línea # " << __LINE__ - 14 << '\n'; std::exit(EXIT_FAILURE); } return EXIT_SUCCESS; }
Salida posible:
abc a b c ^[
Véase también
|
obtiene un carácter de un flujo de archivo
(función) |
|
|
Documentación C
para
getchar
|
|