O tipo union é um tipo de dado complexo que permite que um mesmo local 
                de memória seja compartilhado armazenando diferentes tipos de dados. 
            
            
                Seus membros devem ser declarados entre { e } e separados por (;). A declaração 
                de seus membros segue as mesmas regras para declaração de variáveis. Seu tamanho 
                depende dos tipos de dados utilizados em sua composição.
            
            
                O tipo de dados union é principalmente utilizado para economizar memória.
            
            Sintaxe
            
union nome_union
{
  tipo_dado membro1;
  tipo_dado membro2;
  tipo_dado membroN;
}
            
                O acesso aos membros de uma union é feita utilizando o operadore (.) seguido do nome do do membro como pode 
                ver visto na sintaxe abaixo:
            
            Sintaxe
            
variavel_enum.nome_membro
            
                Como um union agrupa vários tipos de dados em apenas um local de memória, 
                é necessário trabalhar com um membro union por vez, ou seja, a cada atribuição 
                de valor a um determinado membro, a utilização do mesmo deve ser feito em seguida. 
            
            Sintaxe
            
variavel_union.nome_membro1 = valor1 //valor descartado
variavel_union.nome_membro2 = valor2 //valor válido para utilização
            
                Caso seja feita a atribuição de valores para todos os membros de uma union de 
                forma sequencial, apenas o último valor atribuído será válido. Caso outro membro 
                seja acessado, dados inválidos serão retornados.