Page 51

6. ARRAYS DE ESTRUCTURAS Cuando hablamos de arrays dijimos que se podían agrupar , para formarlos , cualquier tipo de variables , esto es extensible a las estructuras y podemos entonces agruparlas ordenadamente , como elementos de un array . Veamos un ejemplo : typedef struct { char

material[50] ;

int

existencia ;

double costo_unitario ; } Item ; Item stock[100] ; Hemos definido aquí un array de 100 elementos , donde cada uno de ellos es una estructura del tipo Item compuesta por tres variables , un int , un double y un string ó array de 50 caracteres. Los arrays de estructuras pueden inicializarse de la manera habitual , así en una definición de stock, podríamos haber escrito: Item stock1[100] = { "tornillos" , 120 , .15 , "tuercas" , 200 , .09 , "arandelas" , 90 , .01 }; Item stock2[]

={ { 'i','t','e','m','1','\0' } , 10 , 1.5 , { 'i','t','e','m','2','\0' } , 20 , 1.0 , { 'i','t','e','m','3','\0' } , 60 , 2.5 , { 'i','t','e','m','4','\0' } , 40 , 4.6 , { 'i','t','e','m','5','\0' } , 10 , 1.2 ,

}; Analicemos un poco las diferencias entre la dos inicializaciones dadas , en la primera , el array material[] es inicializado como un string , por medio de las comillas y luego en forma ordenada , se van inicializando cada uno de los miembros de los elementos del array stock1[] , en la segunda se ha preferido dar valores individuales a cada uno de los elementos del array material , por lo que es necesario encerrarlos entre llaves . Sin embargo hay una diferencia mucho mayor entre las dos sentencias , en la primera explicitamos el tamaño del array , [100] , y sólo inicializamos los tres primeros elementos , los restantes quedarán cargados de basura si la definición es local a alguna

Curso de iniciación al lenguaje C  
Curso de iniciación al lenguaje C  

#include <stdio.h> main() printf("Bienvenido a la Programación en lenguaje C \n"); return 0; { } es mucho /* este es un comentario cor...

Advertisement