C ++ Stringnpos

C ++ Stringnpos
C ++ es un lenguaje que se utiliza para reforzar los conceptos básicos de programación y mejorar el pensamiento lógico de los programadores. En C ++, tratamos con matrices y cadenas, ya que son cruciales para cualquier lenguaje de programación. En las matrices, almacenamos el mismo tipo de datos y una cadena es como una variedad de caracteres que es capaz de almacenar más de un personaje en él. Para encontrar la longitud de la matriz, debemos saber su tamaño que definimos en el momento de la inicialización de la matriz. En el caso de las cuerdas, a veces necesitamos verificar la cadena completa para encontrar un carácter o una palabra. Para encontrar el tamaño de la cadena, se usa la función Len (). Pero si queremos verificar la cadena o encontrar un valor, ¿cómo podemos encontrar un carácter o una palabra en una cadena?? Para ese propósito, usamos el método "String :: NPOS" que es un valor estático constante. La palabra "estática" reserva la memoria para la variable y "constante" le dice al compilador que este valor no se puede cambiar hasta que la ejecución del programa.

El "String :: NPOS" es una constante estática que tiene el valor más alto de -1 con un elemento "size_t" que le dice al compilador sobre el tamaño de una cadena y dice cómo el compilador verifica el carácter hasta que se cumple el "size_t". Cuando el elemento requerido coincide con el valor de una cadena, el compilador cambia automáticamente de -1 a 0 incrementando 1. "OSFS" significa que no hay posición, muestra la posición y se establece inicialmente en -1. Cuando se encuentra un elemento, se incrementa.

Biblioteca:

#incluir

Al importar esto, podremos invocar todos los métodos de bibliotecas estándar de C++. Encontramos la longitud de la cadena y comparamos la cadena con otras cadenas. Entonces, al integrar este archivo de encabezado, no necesitamos importar por separado las bibliotecas. El "String :: NPOS" es una técnica que se utiliza para encontrar la entrada y la salida y se puede usar sin importar el "IOSTREAM". Al incluir la línea de código mencionada anteriormente, podemos usar todas las funciones de las bibliotecas estándar en nuestro código.

Sintaxis:

estatic const size_t npos = -1;
nombre de la variable != String :: OSPOS

No necesitamos escribir la primera declaración porque es alimentado automáticamente. Esta declaración verifica la cadena desde el índice 0 hasta el final para encontrar el registro coincidente desde una cadena. Usamos la segunda declaración en la que queremos verificar si los elementos de esa cadena coinciden con los elementos de la otra cadena. Si coincide, devuelve verdadero. De lo contrario, la declaración se vuelve falsa. Sin entrar en el cuerpo de la condición, el compilador ejecuta la siguiente declaración.

C ++ encuentra los elementos de cadena al incluir el archivo de encabezado en el código

Aprendamos cómo usar el método "String :: NPOS" importando el archivo de encabezado #include.

Código:

#incluir
usando el espacio de nombres STD;
int main ()
cadena str_0 = "The";
cadena str_1 = "Elizabeth the Queen";
int is_found = str_1.encontrar (str_0);
if (is_found != String :: Npos)
cout<

En la primera declaración, importamos el archivo de encabezado para que podamos emplear cualquier función de cualquier biblioteca estándar. Luego, inicialice dos variables de tipo de cadena llamadas "str_0" y "str_1". Esto se hace dentro de la función principal (). A continuación, declare otra variable que es "es_found" del tipo entero que guarda el resultado. Utilizar el .find () método para encontrar la cadena "str_0" en "str_1". Si se encuentra la cadena requerida, devuelve el índice a "is_found" donde se encuentra el valor. Ahora, use la instrucción condicional "IF" para verificar si el "IS_Found" es igual a la "String :: NPOS" o no. Aquí, el valor de "String :: OSPOS" es -1. Cuando no se encuentra la cadena y el "is_found" tiene el valor de -1, la condición se vuelve falsa. Cuando una condición es verdadera, el compilador ejecuta el cuerpo de "si" que contiene una declaración "cout" para imprimir el texto y el índice donde se encuentra el valor "str_0".

Producción:

el encontrado en: 10

C ++ encuentra la cadena 1 en la cadena 2 usando el método "String :: NPOS"

Encontremos la cadena en otra cadena con la ayuda de la función "String :: NPOS".

Código:

#incluir
usando el espacio de nombres STD;
int main ()
cadena str_0 = "my";
cadena str_1 = "colore mi cabello";
int is_found = str_1.encontrar (str_0);
if (is_found != String :: Npos)
cout<
demás
cout<<"Not Found";

Aquí, integre la biblioteca para que podamos acceder al método "Cout" de esta biblioteca. En el método main (), se declaran dos variables de tipo de cadena, "str_0" y "str_1". En la siguiente declaración, se inicializa la variable de tipo entero "IS_Found". Contiene la salida cuando se comparan dos cadenas. Se aplica el método find () y encuentra la cadena "str_0" en "str_1". Si se encuentra, el índice donde se encuentra el valor se devuelve al "IS_Found". Ahora, verifique que el valor "IS_Found" coincida con "String :: Npos" o no. Para ese propósito, invocamos la declaración "si". Si se cumple la condición, se lleva a cabo el cuerpo de la declaración "si". De lo contrario, se lleva a cabo la declaración "más". El cuerpo del "if" tiene un mensaje con el índice donde el valor requerido se encuentra en la cadena y el cuerpo de "más" contiene un mensaje de no encontrado.

Producción:

Mi encontrado en: 6

C ++ usa "String :: OSPOS" creando una función

Construyamos una función y luego llamemos a esa función en el método main () para encontrar la primera cadena en la segunda.

Código:

#incluir
usando el espacio de nombres STD;
void function_str (string str_0, string str_1)

int got = str_0.encontrar (str_1);
Si (tienes != String :: Npos)
cout<< str_1<< " Found at: "<< (got) <
demás
cout<< str_1 << " is not found ";

int main ()

cadena str_0 = "mi libro es";
cadena str_1 = "libro";
cadena str_2 = "my";
function_str (str_0, str_1);
function_str (str_0, str_2);
regresar 0;

Primero, se llama al método function_str (). Aquí, pasamos dos argumentos en él. Dentro de esta función, defina la variable de tipo entero "Got" y asigna con "Str_0.encontrar (str_1) ". Esta función determina el índice del valor donde el "str_1" se encuentra en "str_0". A continuación, use "If" para encontrar si "Got" es igual a "String :: Npos" o no. El cuerpo "si" se emplea si la condición se cumple y la declaración "más" se emplea si la condición no está satisfecha. Ahora, invoca el método Main (). Aquí, declaramos las tres variables de tipo de cadena como "str_0", "str_1" y "str_2". En la siguiente declaración, llame al método function_str () y pase dos atributos. El método se procesa e imprime un mensaje de encontrado o no encontrado en la consola. El beneficio de usar este método es que no importa cuántas veces llamamos a esta función; Se procesará cada vez que lo llamemos. Aquí, llamamos a este método dos veces y pasamos los diferentes argumentos.

Producción:

Libro encontrado en: 3
Mi encontrado en: 0

Conclusión

Estudiamos el método "String :: NPOS" de la cadena para que coincida con una cadena con otra. Esta metodología también se aplica para verificar si un elemento específico de una cadena está presente en la otra cadena o no. Comenzamos el artículo con una breve introducción a las cadenas y el método de cadena :: NPOS. También se discuten los archivos de encabezado importantes que posiblemente se importan en el código para llamar a este método. Este artículo contiene la sintaxis y los ejemplos de codificación de la "cadena :: NPOS" en detalle. Este artículo le brinda el uso del método "String :: OSPOS" con una aplicación práctica.