Sistemas

Solo disponible en BuenasTareas
  • Páginas : 12 (2977 palabras )
  • Descarga(s) : 4
  • Publicado : 11 de octubre de 2009
Leer documento completo
Vista previa del texto
Existen dos diferentes tipos de datos simples definidos por el usuario: enumerados y subrago. Tipos enumerados. Los tipos enumerados se componen de una lista de identificadores encerrados entre paréntesis y separados por comas.
Ejem.
Estaciones = (primavera, verano, otoño, invierno);
Colores (rojo, amarillo, verde, azul, violeta);
Los tipos enumerados son ordinales ya que llevanasociado cada uno un número entero, empezando por el primero, al que se le asigna el O, al segundo un 1, y así sucesivamente, por lo que no es independiente el orden de declaración. Un valor de tipo enumerado no puede pertenecer a dos declaraciones de tipo distintas y no pueden leerse desde teclado, ni escribirse en pantalla.
Tipos subrango.
Es un subconjunto de un tipo ordinal (enteros, boolean,carácter y enumerado) que se especifica indicando el primero y el último elemento del conjunto.
Ejem. 1
Identificador=primerelemento..ultimoelemento;
Ejem. 2 Type Fecha= 1..31; Var Dia: Fecha;
Los tipos enteros, carácter, booleanos, enumerados y subrango se denominan tipos ordinales. Un tipo ordinal representa una secuencia ordenada de valores individuales, a los que se puede aplicarlos conceptos de predecesor y sucesor. En cada tipo de datos ordinales hay un primer valor y un último valor.
*Agregacion De Datos *Struct
Se trata de la forma más versatil de trabajar con fichas de información.
Veamos como se definen y posteriormente comentaremos todos los aspectos relevantes de ellas.
{
tipo1 campo1;
tipo2 campo2;
.
.
} [variable];
{` } punto_de_fuga;`
Aquí estamos definiendo una variable llamada punto_de_fuga cuyo tipo es una estructura de datos formada por tres campos y a la que hemos llamado punto. Dos de ellos son de tipo float y representan las coordenadas del punto, el tercer valor es un entero que indica el color de ese punto. En este caso hemos definido una variable y una estructura. Al disponer de un identificadorpara esta última podemos definir nuevas variables de esta estructura.
Donde origen1 y final1 son variables de tipo struct punto que hemos definido anteriormente. Si en la definición de punto_de_fuga no se hubiese incluído un identificador para la estructura (en este caso el identificador es punto), no podríamos definir nuevas variables con esa estructura ya que no estaría identificada porningún nombre.
También podríamos haber excluído el nombre de la variable (punto_de_fuga). En este caso lo que definiríamos sería una estructura llamada punto que pasaría a ser un nuevo tipo disponible por el usuario. Así los tipos de variables de que dispondríamos ahora serían:
Por tanto podríamos definir cualquier variable con estos tipos o incluso definir matriz de estos tipos.
`Así estaríamos definiendo una matriz de 30 elementos en la que cada elemento es una struct punto con sus tres campos.`
Lo que ahora nos interesa es saber como referenciar esos campos y acceder o modificar, por tanto la información que contienen. Esto se consigue separando el identificador del campo de la variable mediante un punto.
UNIONES DE DATOS UNION Demasiado sencillo para ser verdad, ensi la unión de datos como su nombre lo dice, une o enlaza dos registros de variables para que puedan ser utilizados de una sola forma, pero en distintos métodos y obtener una salida de dos en una.
Las uniones de XDR son diferentes a las de C, ya que tienen un discriminante. Su sintaxis es la siguiente:
Hay que resaltar que una de las declaraciones de la unión puede ser de tipo void, lo queindica que en ese caso no hay datos asociados, o sea, no se transmitiría nada al enviar esa unión (sólo el valor del discriminante, claro). El único otro lugar donde puede aparecer un void en XDR es en la definición del argumento o del valor devuelto por una función. Este tipo XDR se proyecta en C como un tipo struct que contiene un tipo unión de C:
};
Nótese que en el código del cliente y...
tracking img