stringstream class c usage examples
Una clase de secuencia de cadenas en C ++ es una clase de secuencia para operar en cadenas. La clase stringstream implementa las operaciones de entrada / salida en flujos de bases de memoria, es decir, cadena:
La clase stringstream en C ++ permite que un objeto string sea tratado como un flujo. Se utiliza para operar con cuerdas. Al tratar las cadenas como secuencias, podemos realizar operaciones de extracción e inserción desde / hacia una cadena como las secuencias cin y cout.
Estos tipos de operaciones son principalmente útiles para convertir cadenas en tipos de datos numéricos y viceversa. La clase stringstream también demuestra ser útil en diferentes tipos de análisis.
=> Lea la serie de formación Easy C ++.
Lo que vas a aprender:
- Clase stringstream en C ++
- Conclusión
Clase stringstream en C ++
Una clase de secuencia de cadenas se puede representar gráficamente de la siguiente manera:
Podemos ver dónde entra en escena la clase stringstream en el diagrama de ios. Esta clase se deriva de la clase iostream. Los objetos de la clase stringstream utilizan un búfer de cadena que contiene una secuencia de caracteres. Se puede acceder a este búfer directamente como un objeto de cadena.
Podemos usar el miembro str del stringstream para este propósito. Para usar la clase stringstream en el programa C ++, tenemos que usar el encabezado .
Por ejemplo,el código para extraer un entero de la cadena sería:
|_+_|Aquí declaramos un objeto de cadena con valor '2019' y un objeto int 'myInt'. A continuación, usamos el constructor de la clase stringstream para construir un objeto stringstream a partir del objeto string. Luego, usando el operador de extracción (>>), el valor se extrae en myInt. A partir del código anterior, el valor de myInt será 2019.
Exploremos las diversas operaciones de la clase stringstream.
Operaciones de inserción y extracción con stringstream
Ahora veremos cómo obtener datos en el flujo de cadenas o la operación de inserción y cómo obtener datos del flujo de cadenas, es decir, la operación de extracción de la clase de flujo de cadenas.
# 1) Operación de inserción
Para obtener los datos en un flujo de cadenas, podemos usar dos métodos.
(i) Uso del operador de inserción (<<)
top 5 descargador de mp3 para android
Dado un objeto stringstream ss, podemos asignar datos al búfer ss de la siguiente manera usando el<< operator.
|_+_|Esto inserta '¡¡hola, mundo !!' en el stringstream ss.
(ii) Uso de la función str (cadena)
También podemos usar la función str para asignar datos al búfer stringstream. La función str toma la cadena de datos como argumento y asigna estos datos al objeto stringstream.
|_+_|# 2) Operación de extracción
Tenemos dos métodos para sacar los datos de stringstream o para la operación de extracción.
cómo hacer una matriz genérica en java
(i) Uso de la función str ()
Podemos usar la función str () para sacar los datos de stringstream de la siguiente manera.
|_+_|(ii) Uso del operador de extracción (>>)
Podemos usar el operador de extracción para mostrar los datos del flujo de cadenas de la siguiente manera.
|_+_|Según el código anterior, la variable str tendrá el valor del objeto ss como resultado de la acción del operador de extracción.
A continuación se muestra un programa completo que demuestra el uso de las operaciones de inserción y extracción de la clase stringstream.
|_+_|Producción:
En el programa anterior, hemos mostrado los métodos de inserción primero, es decir, el operador<< and str(string) function that reads the string into stringstream.
A continuación, vimos el funcionamiento de los métodos de extracción que son la función str () que obtiene los datos del stringstream y operator >>.
Tenga en cuenta que para el operador >>, dado que los datos de secuencia de cadenas iniciales consisten en espacios en blanco mientras se asignan los datos a una variable de cadena, solo se leerá hasta el primer espacio en blanco. Por lo tanto, para convertir todo el objeto stringstream en datos de cadena, necesitamos una variable para leer los datos separados por espacios en blanco.
Por lo tanto, en el programa anterior, necesitamos tres variables de cadena para obtener todos los datos del objeto de cadena.
Aplicaciones de stringstream en C ++
Podemos encontrar los usos de la clase stringstream en varias aplicaciones.
Algunas de las aplicaciones se han analizado a continuación para su referencia:
# 1) Conversión entre cadenas y números
Los operadores de inserción y extracción del stringstream trabajan con todos los tipos básicos de datos. Por lo tanto, podemos usarlos para convertir cadenas a tipos numéricos y viceversa.
El programa completo para la conversión entre cadenas y números se proporciona a continuación.
|_+_|Producción:
Primero, hemos convertido valores numéricos en valores de cadena. A continuación, convertimos valores de cadena numéricos en valores numéricos.
# 2) Contar el número de palabras en una cadena
Podemos usar la clase stringstream para contar el número de palabras en una cadena. El programa completo se da a continuación.
|_+_|Producción:
El número de palabras en una cadena dada es: 9
Para contar el número de palabras en una cadena dada, primero la convertimos al objeto stringstream. Luego contamos cada palabra usando un operador de extracción (ya que se detiene en cada espacio en blanco) en un bucle. Finalmente, imprimimos el valor del número total de palabras.
cómo abrir un archivo torrent en mac
# 3) Imprima frecuencias de palabras individuales en una cadena
La siguiente aplicación de stringstream en C ++ es imprimir las frecuencias de diferentes palabras en una cadena dada. Esto significa que imprimiremos cuántas veces aparece una palabra en particular en la cadena dada.
Para esto, hemos mantenido una estructura de mapa que tendrá un par clave-valor con cada palabra en la cadena como clave y su valor correspondiente es la frecuencia de esa palabra en particular.
El programa C ++ completo se muestra a continuación.
|_+_|Producción:
En este programa, cada palabra de la cadena se ingresa en el mapa y luego el recuento o la frecuencia de cada palabra se registra como un valor para la clave correspondiente en el mapa. De esta manera sacamos todas las palabras de la cadena y sus frecuencias correspondientes.
Conclusión
La clase Stringstream se utiliza para la inserción y extracción de datos hacia / desde los objetos de cadena. Actúa como una secuencia para el objeto de cadena. La clase stringstream es similar a los streams cin y cout excepto que no tiene un canal de entrada-salida.
Hemos discutido varias operaciones de la clase stringstream junto con varios ejemplos de sus aplicaciones en programación.
En nuestros tutoriales posteriores, analizaremos las funciones de biblioteca del lenguaje C ++ en detalle.
=> Busque toda la serie de formación en C ++ aquí.
Lectura recomendada
- Uso del cursor en MongoDB con ejemplos
- Uso de ObjectId () en MongoDB con ejemplos
- Aprenda a utilizar la clase StringBuilder de C # y sus métodos con ejemplos
- Tutorial de interfaz Java y clase abstracta con ejemplos
- Ejemplos de afirmación de selenio: aplicaciones prácticas en proyectos
- Documento de consulta de MongoDB con el método Find () (ejemplos)
- Tutorial de cadenas de C #: métodos de cadena con ejemplos de código
- Explore los conceptos básicos de Java en Selenium con ejemplos