Función GetLine C ++

Función GetLine C ++
GetLine () se usa para obtener la cadena de entrada del usuario en una o más líneas hasta que llegue un carácter especial (delimitador). Es una función predefinida y usa una biblioteca en el programa, ya que su definición está presente dentro del archivo de encabezado de la biblioteca.
#

Este artículo explicará muchos ejemplos básicos para explicar el funcionamiento de la función GetLine ().

Requisito previo

Hemos usado los 20.04 versión de Ubuntu; Puede usar el último. Para la implementación, debe tener un editor de texto y acceder al terminal de Linux porque podremos ver la salida de los códigos de origen en el terminal a través de la consulta.

Sintaxis de la función GetLine ()

La función getLine () se explica en función de los parámetros que se usan dentro de la función GetLine.

# istream & getline (istream & is, string & str, char delim)

Ahora, explicaremos cada parámetro de esta sintaxis uno por uno.

  • STR: Este parámetro representa el objeto de cadena donde se almacena el valor de entrada cuando el valor lo acepta de la secuencia de entrada.
  • Delim: este parámetro representa el carácter que muestra el delimitador que contiene el valor hasta el cual se va a mostrar la cadena de entrada.

Ejemplo 1

Este ejemplo utiliza un ejemplo simple de la función getLine () en el programa. En programas simples de C ++, necesitamos una biblioteca IOSTream en programas simples de C ++, pero aquí además de esta biblioteca, hemos usado otra biblioteca que usa GetLine () en el código fuente de C ++.

# incluir

Al llegar hacia el programa principal, se declara aquí una variable de cadena para aceptar el mensaje de cadena del usuario. Cuando ejecutamos el código en el terminal, el usuario vendrá a ver un mensaje que se muestra en el que el sistema le pide al usuario que ingrese el mensaje de cadena; Este mensaje se mostrará nuevamente después de alguna procesión. La función getLine () aceptará la oración ingresada por el usuario.

# GetLine (CIN, mensaje);

El mismo mensaje se mostrará sin ningún cambio. Aplicaremos algunas modificaciones después de que el valor se ingrese en ejemplos futuros.

Guarde el código en el archivo con la extensión de C ++/C.

Ejecutar el comando en el terminal Ubuntu. Para compilar el código fuente, necesitamos un compilador. Para el código C ++, necesitamos un compilador G ++ para compilar el código.

$ G ++ -O GetLine GetLine.C
ps ./obtener línea

Tras la ejecución, se muestra un mensaje; Necesitas ingresar tu mensaje. Para que el sistema muestre la salida.

Ahora aquí estamos proporcionando el mismo escenario de manera diferente. Como sabemos, al igual que la función GetLine, 'Cin' también se usa para obtener el valor del usuario. Pero hay algunos deméritos de usar CIN en lugar de o con la función GetLine. Aquí hemos usado un ejemplo, en el que hemos usado CIN en lugar de GetLine, para ver el efecto de este cambio. Todas las demás cosas son las mismas. Por ejemplo, las bibliotecas son las mismas. Todo el programa está escrito dentro del programa principal.

Ahora guarde el archivo y ejecútelo en el terminal Ubuntu. Cuando compilamos el código y luego lo ejecutamos, el sistema nuevamente exigirá un mensaje de cadena de nosotros. Escribiremos la misma cadena. Usando la clave 'Enter', verá que no se muestra toda la cadena. Solo se muestra una parte de la cadena. Esto se debe a que "Cin" acepta el valor de toda la cadena hasta que encuentre el primer espacio. Esa es la razón por la que la salida se reduce del original. Para aceptar toda la cadena, use la función getLine (). Compilar el código y luego ejecutarlo.

Ejemplo 2

En el ejemplo anterior, como al usar "Cin", hemos limitado el valor. Pero es obvio en "Cin"; El valor siempre se reduce al primer espacio en blanco en la cadena dada. Pero en este ejemplo, al usar la función getLine (), hemos limitado el valor en la declaración de entrada aplicando una condición especial. Según la condición dada, proporcionamos un alfabeto en el programa. En la ejecución del código, cuando este alfabeto viene en toda la cadena por primera vez, el compilador deja de imprimir toda la cadena y una cadena desde el inicio hasta que ese alfabeto se muestra en la pantalla como valor resultante.

# GetLine (Cin, mensaje, 'I');

En este ejemplo, puede ver que hemos usado 'I' en la función GetLine () dentro del código fuente. Puede usar cualquier otro alfabeto de su propia elección.

Ahora, después de la compilación, ejecute el código en el terminal. Del valor resultante, está claro que hemos usado 'i' en la cadena de entrada, por lo que los alfabetos que vienen antes de este alfabeto aparecerán como salida.

Ejemplo 3

En este ejemplo, en lugar de usar el alfabeto para mostrar criterios, usamos el número de índice aquí. El compilador obtendrá el registro deseado de acuerdo con el número de índice haciendo esto. El número de índice que se proporciona en la función dejará de obtener la obtención de un registro. Por ejemplo, hemos utilizado el número '7', por lo que el mensaje se mostrará en la posición 6 en el índice.

En este ejemplo, también verá que hay un ligero cambio al escribir la función GetLine (). En el ejemplo anterior, hemos usado 'Cin' dentro de los parámetros de GetLine. Pero esta vez, hemos utilizado una técnica diferente para escribir esta función.

# Cin.GetLine (mensaje, 7);

Cuando ejecutamos el código, veremos que hemos ingresado un nombre con dos palabras con un espacio entre ellos. Pero al solicitar el programa, veremos que el nombre se muestra hasta la sexta posición del índice.

Ejemplo 4

Este ejemplo mostrará la cadena para que cada palabra se muestre en la siguiente línea. Este ejemplo utiliza una nueva biblioteca en lugar de otras, ya que la característica de esta biblioteca ya incluye la transmisión de entrada/ salida. Y también permite leer y escribir en el archivo. Esto también implica mostrar los valores de una cadena bit a bits. Háganos saber para entender el ejemplo. Una variable obtiene el valor proporcionado por el usuario a través de una función GetLine. La otra variable ayuda a dividir las palabras en la cadena y moverlas a la siguiente línea.

# GetLine (CIN, S);

Después de obtener el valor, este valor luego divide el valor y lo coloca en otra variable, 'x'. para la función de visualización; Usaremos un bucle de tiempo aquí.

# Stringstream x (s);

Según el bucle, el valor se imprimirá hasta que el valor esté presente en la declaración. El cuerpo del bucle toma una sola palabra de la oración completa y la corta donde está presente el espacio o viene primero. Esta condición se da en el bucle.

# While (getline (x, t, "))

Puede ver el valor resultante ejecutando el código después de la compilación.

Conclusión

Este artículo ha mostrado algunos ejemplos elementales para explicar el concepto de función getLine (). Puede usar el sistema operativo Linux para la elaboración. Hemos explicado varios ejemplos para explicar el funcionamiento de esta función. Cada ejemplo muestra el funcionamiento de esta función de manera diferente.