Contenido del curso
9. Arrays y Cadenas
Capítulo anterior: 8 - Funciones
Capítulo siguiente: 10 - Punteros
ARRAYS Y CADENAS
Un array es una colección de variables del mismo tipo que se referencian por un nombre común. A un elemento específico de un array se accede mediante un índice. En C todos los arrays constan de posiciones de memoria contiguas. La dirección más baja corresponde al primer elemento y la más alta al último. Los arrays pueden tener una o varias dimensiones. El array más común en C es la cadena, que simplemente es un array de caracteres terminado por uno nulo.
9.1 Arrays unidimensionales
Los arrays unidimensionales son listas de información del mismo tipo que se guardan en posiciones contiguas de memoria según el orden del índice. La forma general de declaración es:tipo nombre_variable [tamaño];
Los arrays tienen que declararse implícitamente para que el compilador reserve espacio en memoria para ellos. El tipo declara el tipo de los elementos del array, el tamaño indica cuántos elementos mantendrá el array.
Para declarar un array de 10 elementos denominado p y de tipo carácter, se escribe: p y de tipo carácter, se escribe: char p[10];En este caso hemos declarado un array que tiene diez elementos, desde p[0] hasta p[9].
En C todos los arrays tienen el 0 como índice de su primer elemento.
C no comprueba los límites de los arrays. Se puede pasar cualquier extremo de un array y escribir en alguna otra variable de datos e incluso en el código del programa.
9.2 Cadenas
El uso más común de los arrays unidimensionales es como cadenas de caracteres. En C una cadena se define como un array de caracteres que termina en un carácter nulo (¿\0¿).
Para declarar un array de caracteres es necesario un carácter más que la cadena más larga que pueda contener, para dejar sitio para el carácter nulo del final de la cadena.
Una constante de cadena es una lista de caracteres encerrada entre dobles comillas. Por ejemplo: "hola, que tal"
No es necesario añadir explícitamente el carácter nulo al final de las constantes de cadena, el compilador lo hace automáticamente.
9.3 Arrays multidimensionales
C permite arrays de más de una dimensión. La forma general de declaración de un array multidimensional es:
Tipo nombre [a] [b] [c] ¿.. [z];
Los arrays de tres o más dimensiones no se utilizan a menudo por la cantidad de memoria que se requiere para almacenarlos, ya que el almacenamiento requerido aumenta exponencialmente con el número de dimensiones.9.4 Inicialización de arrays C permite la inicialización de arrays en el momento de declararlos, como en cualquier variable. La forma general es: tipo nombre [tamaño1] ¿ [tamaño n]={lista de valores};
la lista de valores es una lista de constantes separadas por comas cuyo tipo es compatible con el tipo especificado en la declaración del array. Por ejemplo: int i[10] = {1,2,3,4,5,6,7,8,9,10};
Con las cadenas o arrays de caracteres se hace igual, aunque permite una inicialización abreviada. Estas dos sentencias producen el mismo resultado:
char cad[11] = "Me gusta C";
char cad[11] = {¿M¿,¿e¿,¿ ¿,¿g¿,¿u¿,¿s¿,¿t¿,¿a¿,¿ ¿,¿C¿,¿\0¿};
Los arrays multidimensionales se inicializan del mismo modo que los unidimensionales.
« Anterior 9/15 Siguiente »
Hay 460 opiniones del curso
-
MUY BUEN CURSO -- José Francisco (13/11/08)
Este curso me ha venido muy bien para poner aprobar en el ciclo formativo que estoy haciendo ya que es muy sencillo de enterder.
-
Excelente -- Yoderky (06/11/08)
Este sitio me es muy util, me ha acalarado muchas dudas. Es un gran trabajo el que han hecho, Facil de entender, ejemplos entendibles y sencillos, en fin que sigan es un excelente sitio
-
muy bien -- baby_fer-zamora (18/09/08)
es un exelente curso muy claro y consiso pero le faltaria muchas cosas basicas para empezar a programar
-
Aprender es facil -- Edgardo Rafael (26/02/08)
Muy buen curso. Felicitaciones .
Cursos relacionados
Todos los derechos reservados. No está permitida la reproducción total o parcial de esta obra ni su tratamiento por cualquier método sin autorización escrita de la Editorial o de su autor.La opinión expresada en este correo no tiene por qué coincidir con la de MailxMail SL. Los comentarios y opiniones contenidos en él son únicamente propiedad de sus respectivos autores, nunca de MailxMail SL.
