Matriz c1
Structs
Criado em 5/5/2003 8:26
1
Criado por Julio Cesar de Andrade Vieira Lopes – jcalop@terra.com.br
Structs
-
Definição de struct
Acessando os campos
Declaração de variáveis
Atribuição
Entrada e saída formatada
Variações: uso do typedef
Structs aninhadas
Structs como argumentos de funções
Observe a seguinte situação: i notas aluno matriculas sexo Neste caso, as informações de cada vetor, estariam relacionadas entre si pelo índice, de uma forma “implícita”. Ou seja, um único aluno, seria referenciado por um índice i, nos três vetores.
É interessante em certas ocasiões usar um tipo composto de dados que permites agrupar uma ou mais variáveis(do mesmo tipo e de tipos distintos) sobre um mesmo nome.
Definição de Struct:
Consiste de um certo número de itens de dados chamados membros(campos ou componentes) da struct, que não necessitam ser do mesmo tipo, podendo inclusive ser do tipo vetor e struct(struct aninhada).
Sintaxe:
struct nome_do_tipo
{
/* declaração dos membros */
};
Exemplo: struct tipo_do_aluno
{
int matricula; float nota; char sexo;
};
Observação: A definição de uma struct não cria nenhuma variável, nenhum espaço é alocado em memória. É apenas a definição de um tipo.
Criado em 5/5/2003 8:26
2
Criado por Julio Cesar de Andrade Vieira Lopes – jcalop@terra.com.br
Declarando variáveis: void main(void)
{
struct tipo_do_aluno al01, al02; /*Cria variáveis do tipo aluno */ struct tipo_do_aluno alunos[30]; /* Cria um vetor do tipo aluno */
/* o “.” é o operador de acesso a um campo de uma struct */ al01.matricula = 112; /* acessando a matrícula de al01 */ alunos[0].matricula = 996; /* acessando um campo de um aluno do vetor de alunos */
}
alunos[0].notas[4] = 5.0; /* acessando um vetor dentro de uma struct */
Sexo
Sexo
Matricula
Matricula
nota
nota
al01
al02
Sexo
Sexo
Sexo