Conceptos básicos de las funciones de cadena para la programación c
A pesar de su clasificación de tipo no variable, la biblioteca de programación C no escatima en funciones que manipulan cadenas. Casi cualquier cosa que usted desea hacer con una cadena se puede hacer mediante el uso de algunas de las muchas funciones de cadena. Y cuando esas funciones están a la altura, usted puede escribir su propia cuenta.
Conteúdo
Introducción a las funciones de cadena
Estas son algunas de las funciones de biblioteca de lenguaje C que manipulan o cadenas de abuso:
Función | Que hace |
---|---|
strcmp () | Compara dos cadenas de un modo mayúsculas y minúsculas. Si el stringsmatch, la función devuelve 0. |
strncmp () | Compara los primeros n caracteres de dos cuerdas, que regresan 0 Siel determinado número de caracteres partido. |
strcasecmp () | Compara dos cadenas, haciendo caso omiso de las diferencias de caso. Si el stringsmatch, la función devuelve 0. |
strncasecmp () | Compara un número específico de caracteres entre dos cuerdas, haciendo caso omiso de las diferencias de caso. Si el número de caracteres que coincida, theFunction devuelve 0. |
strcat () | Añade una cadena a otra, la creación de una única cadena cabo oftwo. |
strncat () | Añade un determinado número de caracteres de una cadena a la otra endof. |
strchr () | Las búsquedas de un personaje dentro de una cadena. La posición de la función de carácter returnsthat desde el inicio de la cadena como unPuntero. |
strrchr () | Las búsquedas de un personaje dentro de una cadena, pero a la inversa. TheFunction devuelve la posición del personaje desde el final de lacadena como puntero. |
strstr () | Busca una cadena dentro de otra cadena. Los functionreturns un puntero a la ubicación de la cadena si it'sfound. |
strnstr () | Busca una cadena dentro de los primeros n caracteres de thesecond cadena. La función devuelve un puntero a la string'slocation si se descubre. |
strcpy () | Copias (duplicados) una cadena a otra. |
strncpy () | Copia un número específico de caracteres de una cadena. Toanother |
strlen () | Devuelve la longitud de una cadena, sin contar el 0 o NULLcharacter al final de la cadena. |
Más funciones de cadena están disponibles. Muchos de ellos lo hacen cosas específicas que requieren una comprensión más profunda de C. Las que se muestran son los más comunes.
Todas estas funciones de cadena requieren el archivo de cabecera string.h que se incluye con el código fuente:
#include
En un sistema Unix, puede revisar todas las funciones de cadena escribiendo el comando hombre cuerda en una ventana de terminal.
Texto de las funciones de cadena
Las cadenas se comparan utilizando la función strcmp () y todos sus primos: strncmp (), strcasecmp (), y strncasecmp ().
Las funciones de comparación de cadenas devuelven un valor int basado en el resultado de la comparación: 0 para cuando las cadenas son iguales, o un valor int mayor o menor en función de si el valor de la primera cadena es mayor que (más alto en el alfabeto) o menos que (inferior en el alfabeto) la segunda cadena. La mayoría de las veces, sólo marque el 0.
Let Me In utiliza la función strcmp () en la línea 13 para comparar la contraseña cadena inicializada con cualquier texto que se lee en la línea 11, que se almacena en la matriz de entrada. El resultado de esta operación se almacena en el partido variable, que se utiliza en un árbol de decisión, si los demás en la Línea 14 para mostrar los resultados.
DEJAME ENTRAR
#include #include int main () {contraseña char [] = entrada -char "taco" [15] -INT match-printf ("Password:") -scanf ("% s", entrada) -match = strcmp (entrada , contraseña) -si (partido == 0) puts ("Contraseña aceptada") - ". contraseña no válida alertar a las autoridades." elseputs () - retorno (0) -}
Ejercicio 1: Escriba el código fuente de Let Me In en su editor. Pruebe el programa un par de veces para asegurarse de que sólo acepta taco como la contraseña correcta.
Ejercicio 2: Eliminar la partido variable a partir de su código en el Ejercicio 13-7 y utilizar la función strcmp () directamente en el caso de la comparación. Esa es la forma en la mayoría de los programadores hacen.
Ejercicio 3: Ratchet abajo una muesca de seguridad mediante la sustitución de la función strcmp () con strcasecmp (). Ejecute el programa para confirmar que tanto taco y TACO se aceptan como contraseña.
¿Cómo construir cadenas
El pegamento que se adhiere una cuerda en el extremo de otra es la función strcat (). El termino gato es la abreviatura de concatenar, lo que significa para enlazar juntos. Así es como funciona:
strcat (primero, segundo) -
Después de esta sentencia se ejecuta, el texto de la segunda cadena se añade a la primera cadena. O puede utilizar valores inmediatos:
strcat (gerundio, "ing") -
Esta declaración vira el texto ing en el extremo de la matriz de texto gerundio.
El código en presentaciones declara dos matrices char a celebrar texto. Matriz primero es dos veces mayor que Ultima Vez porque es el lugar donde se copia el contenido de la segunda cadena. La copia se realiza en la línea 13 con la función strcat ().
PRESENTACIONES
#include #include int main () {char primero [40] -char última [20] -printf ("¿Cuál es tu nombre?") -scanf ("% s", en primer lugar) -printf ("¿Cuál es tu último nombrar ") -scanf ("% s ", apellido) -strcat (primero, último) -printf (" Encantado de conocerte,% s n ", en primer lugar) -Retorno (0) -}
Ejercicio 4: Crear un nuevo programa mediante el código fuente de Presentaciones. Ejecute el programa. Escriba su nombre y apellidos, y luego hacer ejercicio 5.
Ejercicio 5: Modificar el código fuente de modo que un solo espacio se concatena a la primera cadena antes de la última cadena es concatenada.