cadenas c
ALGORITMOS Y PROGRAMACIÓN
“CADENAS”
Unidad: 7
Nombre del Alumno:
EDSON GEOVANNI MARTINEZ QUIROZ.
Nombre de la Profesora:
SUSANA MÓNICA ROMÁN NÁJERA
Grado: 2 Grupo: B#1
Instituto Tecnológico de Salina Cruz
CADENAS
INTRODUCCIÓN………………………………………………………..……03
7.1 FUNDAMENTOS DE CADENAS Y CARACTERES.…………………………………………..……….…...….…04
7.2FUNCIONES PARA CADENAS DE CARACTERES………………..06
CONCLUSIÓN…………………………………………….………………….19
FUENTES……………………………………………………………………..20
INTRODUCCIÓN
La forma correcta de leer cadenas es un tema que casi nunca se trata a profundidad en los libros de C, y menos aún en los cursos, así que no es raro que sea una de las cosas que más problemas ocasionan aquienes están aprendiendo este lenguaje.
En este post vamos a ver cómo trabajan algunas de las principales funciones de entrada de C, así como sus pros y contras en relación a la lectura de cadenas. Al final se muestra una función de ejemplo que se puede utilizar para facilitarnos la programación.
El post está enfocado a la lectura de cadenas desde el teclado. Algunos de los conceptos o ideaspodrían variar para la lectura de datos desde archivos, pero en general, lo aquí descrito debería aplicar también para leer desde archivos de texto.
7.1 FUNDAMENTOS DE CADENAS Y CARACTERES
Los caracteres son bloques de construcción fundamentales para los programas fuente. Un programa puede contener constantes de carácter. Unaconstante de carácter es un valor int representado por un carácter entre comillas sencillas. El valor de una constante de carácter es el valor entero del carácter en el conjunto de caracteres de la máquina.
Por ejemplo, 'z' representa el valor entero de z, y '\n' representa el valor entero de una nueva línea.
Una cadena es un conjunto de caracteres tratados como una sola unidad. Una cadena puedeincluir letras, dígitos y varios caracteres especiales como +, -, *, y $. En C, las literales de cadena, o constanes de cadena, se escriben dentro de comillas dobles de la siguiente manera:
“Juan P. Pérez” (un nombre)
“99999 de Eje Central” (la dirección de una calle)
En C, una cadena es un arreglo de caracteres, los cuales terminan con el carácter nulo ('\0'). Se accede a una cadena mediante unapuntador a su primer carácter. El valor de una cadena es la dirección del primer carácter. Así, en C, es apropiado decir que una cadena es un apuntador, de hecho, un apuntador al primer carácter de la cadena. En este sentido, las cadenas son como arreglos, debido a que un arreglo también es un apuntador al primer elemento.
Un arreglo de caracteres o una variable de tipo char * puede inicializarsecon una cadena en la definición. Las definiciones
char color[] = “azul”;
constchar *ptrColor = “azul”;
inicializan una variable con la cadena “azul”. La primera definición crea un arreglo de 5 elementos, color, que contiene los caracteres 'a', 'z', 'u', 'l' y '\0'. La segunda variable crea una variable apuntador, ptrColor, que apunta a la cadena
“azul” en algún lugar de la memoria.
Ladefinición del arreglo anterior también podría escribirse como
char color[] = {'a', 'z', 'u', 'l', '\0'};
Cuando se define un arreglo para que contenga una cadena, éste debe ser lo suficiente grande para almacenar la cadena y su carácter de terminación nulo. La definición anterior determina automáticamente el tamaño del arreglo, basándose en el número de inicializaciones de la lista de inicialización('a', 'z', 'u', 'l', '\0').
No almacenar suficiente espacio en un arreglo de caracteres para almacenar el carácter nulo que termina una cadena, es un error.
Si una cadena es más grande que el arreglo de caracteres en el cual se va a almacenar, los caracteres más allá del final del arreglo sobrescribirán los datos siguientes en la memoria del arreglo.
Una cadena puede almacenarse en un...
Regístrate para leer el documento completo.