Empezaremos con los tipos de datos estructurados, y con el ms sencillo de ellos:
los arrays. Nota: siguiendo con los trminos en ingls, array es otro que no se suele traducir. El trmino arreglo no es en realidad una traduccin, sino un anglicismo (ms bien, un trmino que no existe en espaol). Podramos traducir array como coleccin, seleccin, o tal vez mejor, como formacin. En este curso, de todos modos, usaremos el trmino array. Los arrays permiten agrupar datos usando un nico identificador. Todos los elementos de un array son del mismo tipo, y para acceder a cada elemento se usan ndices. Sintaxis: <tipo> <identificador>[<nm_elemen>][[<nm_elemen>]...]; Los corchetes en negrita no indican un valor opcional: deben aparecer, por eso estn en negrita. La sintaxis es similar que para las cadenas, de hecho, las cadenas no son otra cosa que arrays de caracteres (tipo char). Desde el punto de vista del programador, un array es un conjunto de datos del mismo tipo a los que se puede acceder individualmente mediante un ndice. Por ejemplo, si declaramos un objeto de este modo: int valor; El identificador 'valor' se refiere a un objeto de tipo int. El compilador slo obtendr memoria para almecenar un entero, y el programa slo podr almacenar y leer un nico valor en ese objeto en cada momento. Por el contrario, si declaramos un array: int vector[10]; El compilador obtendr espacio de memoria suficiente para almacenar 10 objetos de tipo int, y el programa podr acceder a cada uno de esos valores para leerlos o modificarlos. Para acceder a cada uno de los valores se usa un ndice, que en este caso podr tomar valores entre 0 y 9. Usando el valor del ndice entre corchetes, por ejemplo: vector[0] o vector[4]. Es importante tambin tener en cuenta que el espacio de memoria obtenido para almacenar los valores de un array ser contiguo, esto es, toda la memoria usada por un array tendr direcciones consecutivas, y no estar fragmentada. Otro detalle muy importante es que cuando se declaran arrays, los valores para el nmero de elementos deben ser siempre constantes enteras. Nunca se puede usar una variable para definir el tamao de un array.
DECLARACION DE ARRAYS (ARREGLOS)
Los arrays pueden ser inicializados en la declaracin.
Ejemplos: float R[10] = {2, 32, 4.6, 2, 1, 0.5, 3, 8, 0, 12}; float S[] = {2, 32, 4.6, 2, 1, 0.5, 3, 8, 0, 12}; int N[] = {1, 2, 3, 6}; char Mensaje[] = "Error de lectura"; Cuando se inicializan los arrays en la declaracin no es obligatorio especificar el tamao para la primera dimensin, como ocurre en los ejemplos de las lneas 2, 3, 4, 5 y 6. En estos casos la dimensin que queda indefinida se calcula a partir del nmero de elementos en la lista de valores iniciales. El compilador sabe contar y puede calcular el tamao necesario de la dimensin para contener el nmero de elementos especificados. En el caso 2, el nmero de elementos es 10, ya que hay diez valores en la lista. En el caso 3, ser 4. Y en el caso 4, el nmero de elementos es 17, 16 caracteres ms el cero de fin de cadena. EJEMPLOS