6.11 Uniones


El tipo estructurado union es similar al struct, salvo que en las mismas posiciones de memoria almacena todos sus campos.


struct rectangulo
{

   int ancho;
   int largo;
};


union todo_en_uno


{
   char cadena [8];
   int entero;
   double real;
};


En el caso del struct, cada campo ocupa unas posiciones de memoria diferentes. En la union los tres campos comparten las mismas posiciones de memoria.
Eso significa que si se altera un campo de una union se afecta a todos los demás campos.
La union sólo tiene sentido si se sabe que sólo se va a emplear un campo en cada ocasión.