Descripción
Se utiliza para volver a colocar el carácter e intenta mover el indicador de posición actual de la secuencia de entrada controlada al carácter que precede al actual.
Declaración
A continuación se muestra la declaración de std :: streambuf :: sputbackc.
int sputbackc (char c);
Parámetros
c - Carácter para devolver.
Valor devuelto
Devuelve el valor del carácter devuelto, como un valor de tipo int.
Excepciones
Basic guarantee - si se lanza una excepción, el búfer de flujo está en un estado válido.
Carreras de datos
Modifica el objeto de búfer de flujo.
Ejemplo
En el siguiente ejemplo se explica sobre std :: streambuf :: sputbackc.
#include <iostream>
#include <cstdio>
int main () {
char ch;
std::streambuf * pbuf = std::cin.rdbuf();
std::cout << "Please, enter some letters and then a number: ";
do {
ch = pbuf->sbumpc();
if ( (ch>='0') && (ch <='9') ) {
pbuf->sputbackc (ch);
long n;
std::cin >> n;
std::cout << "You entered number " << n << '\n';
break;
}
} while ( ch != EOF );
return 0;
}
Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:
Please, enter some letters and then a number: