Índice:
- Como colocar estruturas dentro de estruturas na programação C
- Como passar uma estrutura para uma função na programação C
Vídeo: Week 2, continued 2024
As estruturas são talvez o tipo de variável mais estranho na linguagem de programação C. As duas etapas necessárias para criá-las são incomuns, mas o método de referência de um membro da estrutura sempre parece desativar os programadores iniciais. Se você acha que, além dessas duas questões, as estruturas não poderiam ficar mais estranhas, você está muito enganado.
Como colocar estruturas dentro de estruturas na programação C
É verdade que uma estrutura possui variáveis de linguagem C. Também é verdade que uma estrutura é uma variável de linguagem C. Portanto, segue-se que uma estrutura pode conter outra estrutura como um membro. Não deixe que esse tipo de pensamento estranho confunde você. Em vez disso, testemunhe o exemplo mostrado em A Estrutura aninhada.
A NESTED STRUCTURE
#include #include int main () {struct date {int month; dia int; ano int;}; struct human {char name [45]; struct data birthday;}; struct presidente humano; estridente (nome do presidente, "George Washington"); Presidente. aniversário. mês = 2; Presidente. aniversário. dia = 22; Presidente. aniversário. ano = 1732; printf ("% s nasceu em% d /% d /% dn", presidente. nome, presidente. aniversário. mês, presidente. aniversário. dia, presidente. ano de aniversário.); retornar (0);}
Uma Estrutura aninhada declara dois tipos de estrutura: data na Linha 6 e humano na Linha 12. Dentro da declaração da estrutura humana, na Linha 15 você vê a variável de estrutura de data aniversário declarada. Isso é efetivamente como uma estrutura nasce dentro de outra.
A linha 17 cria uma variável de estrutura humana, presidente . O resto do código preenche os membros da estrutura com dados. O método para acessar os membros da estrutura aninhada é mostrado nas Linhas 20 a 22.
Os nomes das variáveis da estrutura são usados; não o nome que é usado para declarar a estrutura.
Exercício 1 : Digite o código-fonte de A Estrutura aninhada no seu editor. Crie e execute o programa.
Exercício 2 : Substitua o membro nome na estrutura humana com uma estrutura aninhada. Nomeie esse id de estrutura e tenha dois membros, char arrays, primeiro e último, para armazenar o primeiro e último nome de um indivíduo. Se você fizer tudo corretamente, a referência ao nome do presidente será a variável presidente. nome. primeiro e presidente. nome. último . Certifique-se de atribuir valores a essas variáveis no seu código e exibir os resultados.
Como passar uma estrutura para uma função na programação C
Como um tipo de variável, é perfeitamente possível que uma função coma uma estrutura e a tosse.No entanto, essa situação exige que a estrutura seja declarada como uma variável global. Isso porque se você declara uma estrutura dentro de uma função, e main () é uma função, a definição está disponível somente nessa função.
Portanto, a declaração deve ser feita globalmente para que esteja disponível para todas as funções no código.