Lenguajes

Páginas: 4 (754 palabras) Publicado: 9 de octubre de 2012
Año

revisión

LENGUAJES Y COMPILADORES UNLaM
Prof.: Jorge H. Doorn; Mara Capuya JTP: Hernan Villarreal Aytes: Pablo Pomar

Demostración Compatibilidad– Práctica UnionesAsignaciones

.1Demostración en Laboratorio Compatibilidad de tipos – Uniones – Asignaciones complejas

I. Compatibilidad de tipos
En los ejemplos que mencionaremos, se podrá apreciar que para efectuar unaasignación se debe tener en cuenta que los dos tipos sean iguales. Pero, ¿Cuándo son iguales los tipos de ambos lados de una asignación ? Ejemplo en C++ #include #include #include #include int main(void) {typedef int unint; typedef int otroint ; unint un; otroint otro; un = 30 ; otro = 40 ; un = otro ; // Ok, compatibilidad por estructura typedef struct { int pi ; } uno ; typedef struct { int pi ; }dos ; uno u ; dos d ; u.pi = 100 ; d.pi = 200 ; // u = d ; // Error, Compatibilidad por nombre return 0 )

II. Uniones
Una unión es una superposición de dos o más tipos definidos con anterioridad.Se define una celda del tamaño del elemento más grande. Las uniones se crearon con la intención de: Ahorrar espacio en memoria. Lograr cierto grado de “tipo dinámico”. Uniones en C/C++ #include#include #include #include int main(void) { struct uno { int i; char* f; } a;

Página 1 de 5

Año

revisión

LENGUAJES Y COMPILADORES UNLaM
Prof.: Jorge H. Doorn; Mara Capuya JTP: HernanVillarreal Aytes: Pablo Pomar

Demostración Compatibilidad– Práctica UnionesAsignaciones

.1

union dos { int i; char* f; } b,c; union tres { int i; char* f; } d; a.i = 4000 ; a.f ="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ; // no pierdo el valor de a.i b.i = 5000 ; b.f = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" ; // pierdo el valor de b.i // d = b ; // Error return 0; } Veamos otro ejemplo: #include#include #include #include #include int main(void) { union myunion { char* c_month ; int n_month ; } u; u.c_month = "enero"; char* cmes; int nmes; nmes = 0; u.n_month = 6; u.c_month = "junio";...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje
  • El Lenguaje
  • Lenguaje
  • El Lenguaje
  • Lenguaje
  • Lenguaje
  • Lenguaje
  • Lenguaje

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS