Cinta.ignorar en c ++

Cinta.ignorar en c ++

Para ignorar o eliminar solo o tal vez más letras del búfer de entrada usando el CIN.método ignorar (). Tal vez necesitemos eliminar el búfer indeseable para que los siguientes datos se almacenen en el contenedor previsto en lugar del caché de la variable anterior. Por ejemplo, debemos proporcionar una matriz o cadena de personajes después de ingresar el comando CIN. Como resultado, debemos vaciar el búfer de entrada; más, el búfer de la variable anterior estaría ocupada. Debido a que el caché del elemento anterior carece de espacio para retener datos frescos, presionando el botón "Enter" justo después de que la entrada inicial ignore la siguiente entrada del contenedor. Comencemos con los ejemplos del CIN.función ignorar () con el lanzamiento de nuevos archivos C ++ a través del shell terminal. El archivo debe crearse a través de la instrucción táctil y el nombre del archivo. El editor "nano" de Ubuntu se ha utilizado hasta ahora para abrir el archivo para editar.

Ejemplo 01:

Al aplicar el comando nano, ignore.El archivo CC se abriría en el editor. Es hora de comenzar nuestro primer ejemplo. En primer lugar, veremos el código C ++ sin usar el CIN.función ignorar (). Entonces, lo hemos comenzado con dos bibliotecas de encabezado, yo.mi., vector e iostream. El espacio de nombres se utiliza después de eso. La función Main () se inicia con la declaración de una variable entera "NUM" y matriz de tipo de caracteres "STR" del tamaño 100 utilizado para almacenar algún valor de cadena. La instrucción Cout le pide a un usuario que agregue un entero y un valor de tipo de cadena. La instrucción CIN se usa para poner el valor entero a la variable "NUM" y CIN.getLine () se usa para obtener los valores de tipo de cadena ingresados ​​por un usuario para guardarlo en la variable "STR" hasta 100 caracteres. La siguiente instrucción Cout se utiliza para imprimir el valor entero y de cadena ingresado por el usuario en el shell.

#incluir
#incluir
usando el espacio de nombres STD;
principal()
int num;
char str [100];
cout << "Please add one Integer and one String value:\n";
CIN >> NUM;
cinta.GetLine (str, 100); // tomar una cadena
cout << "Number :" << num << ", String: " << Str << endl;

Ahora, el código ha sido compilado y ejecutado. El usuario ha ingresado dos valores separados por un espacio, yo.mi., entero y cadena. Ambos valores se han imprimido como se especifica.

Al ejecutar nuevamente, el usuario ha agregado 1 valor y presionado ENTER. La salida muestra un valor en el rendimiento y el valor de la cadena está vacío.

En la tercera ejecución, un usuario ha agregado un valor de cadena sin agregar un valor entero. A cambio, la salida muestra el valor 0 para el número y el nulo para la cadena.

Actualicemos el código agregando el "CIN.función ignorar () "después de la declaración CIN. Se necesitan dos argumentos. Uno es encabezado de tamaño de flujo numeric_limits para borrar el caché del búfer después del 1er valor y una nueva línea convincente i.mi. "\norte". Entonces, la siguiente variable "STR" obtendrá el valor después de que el usuario llegue a la siguiente línea.

#incluir
#incluir
usando el espacio de nombres STD;
principal()
int num;
char str [100];
cout << "Please add one Integer and one String value:\n";
CIN >> NUM; // borrar búfer antes de tomar una nueva línea
cinta.ignorar (numeric_limits:: max (), '\ n');
cinta.GetLine (str, 100); // tomar una cadena
cout << "Number :" << num << ", String: " << Str << endl;

Un usuario ha agregado dos valores con un espacio. Después de presionar ENTER, un usuario ha agregado otro valor. Como resultado, la salida muestra el primer valor entero y el valor de cadena agregado en la siguiente línea. El Cin.ignorar () tomará el primer valor antes del espacio y el segundo valor de la siguiente línea después de borrar el caché del búfer. Puede ver, ha ignorado el valor de "ignorar" del valor de la cadena desde la primera línea de entrada.

Ejemplo 02:

Ahora, hemos estado echando un vistazo a otro ejemplo. Se han agregado algunos archivos de encabezado antes de la función Main (). Dentro de una función, el bucle while continúa ejecutando algunas declaraciones. Se declaran tres variables enteros, y la declaración Cout solicita agregar entrada en esas variables. La instrucción CIN guarda los valores de entrada a las variables, y la instrucción "if" se usa para verificar si el primer valor es igual a 0 o no. En caso afirmativo, saldrá del programa inmediatamente. De lo contrario, el programa continúa. El Cin.La instrucción ignorar () está aquí para borrar el caché antes de la línea siguiente, y la instrucción Cout mostrará los valores ingresados.

#incluir
#incluir
#incluir
#incluir
#incluir
usando el espacio de nombres STD;
int main ()
while (verdadero)
int n1, n2, n3;
cout << "Please Type Space-separated 3 Numbers: " << endl;
Cin >> n1 >> n2 >> n3;
if (n1 == 0) salida (exit_success);
cinta.ignorar (numeric_limits:: max (), '\ n');
cout <<"1st: "<
return exit_success;

Después de ejecutar este ejemplo de código, el usuario ha agregado tres valores. El primer valor no es 0; Mostrará el primer, segundo y tercero. El bucle "while" continúa nuevamente, y el usuario agrega 0 como valor entero del primer. A cambio, el programa salió sin más ejecución.

Ejemplo 03:

El último ejemplo es tomar variables de tipo de dos caracteres como entrada del usuario. Entre ambos Cin.Get () líneas para tomar valores, hemos utilizado el CIN.ignorar () función para borrar la memoria caché del búfer al encontrar el espacio. Si el usuario agrega alguna cadena, Cin.get () solo tomará su inicial y Cout lo mostrará según el siguiente código.

#incluir
#incluir
#incluir
#incluir
#incluir
usando el espacio de nombres STD;
int main ()
char v1, v2;
cout << "Type Two words: " << endl;
V1 = CIN.conseguir();
cinta.ignorar (numeric_limits:: max (), ");
V2 = CIN.conseguir();
cout << "Initials of both words are: "<return exit_success;

Después de la ejecución, el usuario agregó dos palabras, mientras que la instrucción CoUT muestra solo iniciales.

Conclusión:

Entonces, esto se trataba del uso del CIN.Función Ignorar () en C ++ para borrar los buffers de caché. Hemos usado los caracteres del espacio y la siguiente línea como delimitadores. Los ejemplos implementados son bastante fáciles de aprender y comprender. Por lo tanto, estamos seguros de que recibirá ayuda de todos los ejemplos.