O artigo fornece uma análise comparativa entre estrutura e união na linguagem de programação C.
Estrutura em c
Uma estrutura em C é um tipo de dados definido pelo usuário que permite aos programadores agrupar variáveis de diferentes tipos de dados em uma única entidade. Uma estrutura pode conter membros, que podem ser variáveis de qualquer tipo de dados, como números inteiros, carros alegóricos, matrizes ou até outras estruturas. Para declarar uma estrutura em C, você deve usar a palavra -chave “Estrutura” seguido pelo nome da estrutura e de suas variáveis de membros, como mostrado no exemplo a seguir:
Declaração de uma estrutura em C
A seguir, a declaração de estrutura na programação C.
struct_keyword struct_nameUnião em c
Uma união em C também é um tipo de dados definido pelo usuário que permite ao programador armazenar diferentes tipos de dados no mesmo local de memória. Ao contrário das estruturas, os sindicatos têm apenas um local de memória que é compartilhado por todos os seus membros. Portanto, apenas um membro do sindicato pode acessá -lo ao mesmo tempo. O tamanho de um sindicato é medido pelo tamanho de seu maior membro.
Declaração de uma União em C
Aqui está um exemplo de como declarar uma união em c.
Union_keyword Union_nameDiferença entre estrutura e união em c
A tabela a seguir mostra a diferença entre estrutura e união na programação C.
Recurso | Estrutura | União |
Definição | Coleção de membros de dados relacionados | O mesmo local de memória é compartilhado por todos os membros |
Alocação de memória | Aloca memória para todos os membros | Aloca memória para o maior membro |
Inicializando membros | Pode ser inicializado individualmente ou como um todo | Só pode inicializar um membro de cada vez |
Inicialização padrão | Os membros são inicializados para valores padrão | Os membros não são inicializados por padrão |
Cálculo de tamanho | A soma dos tamanhos de todos os membros | Tamanho do maior membro |
Casos de uso | Usado para armazenar vários tipos de dados e acessá -los juntos | Usado para salvar a memória quando vários tipos de dados compartilham o mesmo local de memória |
Acessando membros | Usando o nome do membro e o ponto (.) Operador | Usando o nome do membro e o ponto (.) Operador |
A seguir, é apresentado um exemplo de codificação que ilustra a diferença entre estrutura e união na programação C.
#incluirNo código acima, definimos uma estrutura chamada Mystruct que contém um número inteiro e um personagem, e uma união chamada MyUnion que também contém um número inteiro e um personagem. Em seguida, criamos instâncias de ambos Mystruct e MyUnion e definir seus valores. Definimos o valor inteiro de ambos como 10 e o valor do personagem de ambos 'A'.
Quando imprimimos os valores da estrutura e união, podemos ver que a estrutura possui variáveis separadas para o número inteiro e caráter, e cada variável mantém seu valor. A saída é mostrada abaixo:
Conclusão
Estrutura e união são dois tipos de dados diferentes que têm a sintaxe semelhante na linguagem C. Eles são diferentes em alguns aspectos, como armazenamento, alocação de memória, usabilidade e outros recursos. Este artigo apresenta um guia fácil para encontrar uma comparação detalhada entre estrutura e união, seguida por exemplos de codificação que diferenciam claramente ambos na programação C C.