El strstr () La función es una función incorporada utilizada para procesar cadenas que manejan la biblioteca cadena.H. Es la biblioteca la que nos proporciona múltiples funciones para manipular cadena. Strstr () se usa para encontrar la primera aparición de la cadena principal especificada de la subcadena coincidente buscando la cadena de origen. Si la búsqueda es exitosa, devolverá un puntero a la primera sustancia de una subcadena en una cadena a buscar. En caso de que aparezca por más de una vez, pasará el puntero a la primera aparición de la subcadena. Si la subcadena deseada no aparece, devolverá nulo /0.
Sintaxis
$ char *strstr ()
Char*strstr () es responsable de manejar el tipo de datos de caracteres para nuestra cadena encontrada y también devolverá la cadena. En esta función se pasan dos parámetros: uno será la cadena a buscar y la segunda de la que se obtendrá la cadena, o podemos decir que es la cadena principal.
$ char *strstr (const char *string_a, const char *string_b)
En la sintaxis anterior, pasamos dos cadenas de caracteres constantes "String_a" y "String_b". String_a es el que se buscará, mientras que String_B es la cadena principal desde la cual el puntero buscará String_A.
Cómo funciona
Para realizar una búsqueda en una cadena, primero definimos dos variables: la cadena principal y la subcadena como podemos ver en la figura a continuación. El segundo será nuestra subcadena que tenemos que buscar en la cadena principal.
El puntero se mueve a la primera aparición de la subcadena dentro de la cadena principal como aparece primero. Mostrará la cadena buscada. Este método es útil para buscar una cadena en un enorme párrafo.
Ejemplo 1:
En el ejemplo a continuación, vamos a usar el strstr () función para encontrar la cadena deseada dentro de la cadena. Para lograr esto, primero incluiremos nuestros archivos de encabezado que son "Stdio.h "y" cadena.H ". "Stdio.H ”significa Biblioteca de salida de entrada estándar, que se utiliza para realizar operaciones de entrada-salida. "cadena.H "es el archivo de encabezado que define múltiples funciones para manipular cadenas y matrices.
Después de incluir nuestros archivos de encabezado, procederemos al principal() función que es la parte central de nuestro programa. El principal() La función es la que se realizan nuestras operaciones completas, que se ejecutarán,. En nuestra función principal declararemos las matrices de dos caracteres "String_a" y "String_B". String_a de la matriz tamaño 100 es responsable de almacenar la cadena principal desde la cual se buscará la subcadena. La segunda variable "String_B" es la que almacenará la cadena que se busca desde "String_a".
Después de la Declaración de Variables, asignaremos el "String_B" y strstr () función en la que estamos pasando dos parámetros: el primero es la cadena principal "string_a" y la segunda es la cadena "strstr" que se debe buscar. Al lado, imprimiremos nuestra salida usando el printf () declaración.
Como resultado, la salida se mostrará como el fragmento a continuación.
Ejemplo 2:
En este caso, vamos a buscar la subcadena utilizando una declaración if-else. Continuar a nuestro código, primero definiremos nuestros archivos de encabezado "Cadena.H "y" Stdio.H ". El propósito de estos archivos de encabezado se discute en el ejemplo anterior. Después de incluir archivos de encabezado, nos moveremos a nuestro principal() Función donde primero inicializaremos las variables de nuestras características usando una matriz porque tenemos que almacenar más de un solo carácter para que estemos usando matrices.
Inicializamos variables de tres caracteres llamadas "String_a []", "String-B []" y "String_F". String_a es responsable de mantener la cadena principal, mientras que String_B contendrá la subcadena que vamos a buscar. String_f se usa para mantener el strstr () Valor de retorno de las funciones. A continuación, asignamos el strstr () función a la variable "string_f". Pasamos dos variables la variable de cadena principal "String_a" y la variable de retención de subcadena "String_B".
En el siguiente paso, definiremos el si() Declaración a la que pasamos "String_f" como parámetro. Si la variable pasada es verdadera y ha encontrado la subcadena deseada fuera de la cadena principal, se moverá al paso interno de la declaración if () donde imprimiremos nuestra declaración como salida. Aquí, "%s" es responsable de imprimir la cadena. A medida que pasamos por primera vez la variable "string_b" que contiene "segundo strstr", se muestra como el primer "%s". Luego, el valor "String_a" se mostrará en la segunda aparición de "%s", ya que se realizará en la tercera aparición. Si la declaración no es verdadera, simplemente mostrará un "mensaje no encontrado" de cadena "
Como resultado, nuestra salida se ejecuta con éxito como se muestra en la captura de pantalla a continuación.
Ejemplo 3:
En este código, mostraremos la salida de las declaraciones de los demás. Al igual que la salida anterior, mostramos la instrucción if () como verdadero. Pero en esto, lo mostraremos como falso y ejecutaremos la instrucción de la otra.
Para hacerlo, repitimos todo el procedimiento como fue en "Ejemplo 2". Primero, declaramos nuestros archivos de encabezado e inicializamos nuestras variables. Lo único que cambiamos en este código es la subconjunto que vamos a buscar en la cadena principal. En este caso, nuestro puntero verificará primero la declaración IF si es verdadera o no. Si es verdadero, imprimirá la salida de declaraciones if (). Mientras que en nuestro caso, nuestra instrucción if () no es verdadera, por lo que imprimirá la instrucción de lo contrario que se "cadena no se encuentra" como se muestra en la figura a continuación.
Conclusión
En esta guía, hemos aprendido sobre la función strncpy () del idioma C. Puede explorar más sobre la función strncpy () de la biblioteca C utilizando múltiples ejemplos, puede obtener una comprensión aún mejor al implementarla. Nos permitió usar una sola cadena en un código varias veces en lugar de escribirla una y otra vez. mediante múltiples ejemplos. El strstr () La función nos permitió reducir la complejidad del tiempo en la búsqueda de una cadena específica en enormes párrafos. y con una declaración de línea, podemos realizarla varias veces en un solo código. No tenemos que definirlos una y otra vez.