Baixe o app para aproveitar ainda mais
Prévia do material em texto
STRUCT – REGISTRO Estrutura de Dados - STRUCT As estruturas de dados consistem em criar apenas um dado que contém vários membros, que nada mais são do que outras variáveis. De uma forma mais simples, é como se uma variável tivesse outras variáveis dentro dela. A vantagem em se usar estruturas de dados é que podemos agrupar de forma organizada vários tipos de dados diferentes, por exemplo, dentro de uma estrutura de dados podemos ter juntos tanto um tipo float, um inteiro, um char ou um double. As variáveis que ficam dentro da estrutura de dados são chamadas de membros. Criando uma estrutura de dados com STRUCT Para criar uma estrutura de dados usamos a palavra reservada struct. Toda estrutura deve ser criada antes de qualquer função ou mesmo da função principal main. Toda estrutura tem nome e seus membros são declarados dentro de um bloco de dados,ou seja entre { }. Após a definição de seus membros no bloco de dados, terminamos a linha com um ponto-e-vírgula ; Por exemplo, para criarmos uma estrutura de dados referente a uma data faríamos: struct data { int dia; int mes; int ano; }; Declarando um struct e acessando seus membros Ainda utilizando o exemplo acima, vamos declarar uma variável do tipo estrututa de dados data e acessar seus membros. Após criarmos uma estrutura de dados com struct, poderemos utilizá-la como um tipo de dado comum (ex.: float, int, char). E para acessar seus membros utilizamos o nome da estrutura seguida de uma variável declarada seguida de um ponto (.) e o nome do membro. Veja este exemplo abaixo: #include <iostream> using namespace std; struct data { int dia; int mes; int ano; }; int main (){ data hoje; hoje.dia = 23; hoje.mes = 9; hoje.ano = 2008; cout <<"Hoje he dia “<<hoje.dia<<endl; cout<<”hoje he mes“<< hoje.mes<<endl; cout<<”hoje he ano” <<hoje.ano<<endl; system ("pause"); } Portanto, a variável hoje é declarada como sendo um tipo de dado data. Data é uma estrutura de dados que tem três características (ou três membros) inteiros: dia, mes e ano. Como hoje é um tipo de dado data, ele obtém os mesmos três membros. Para acessar cada membro, usamos a variável e depois o nome do membro que queremos acessar separados por ponto (.). OUTRO EXEEMPLO #include <iostream> using namespace std; struct aluno { int matricula char *nome ; int idade; }turma; int main () { turme.matricula=20110123659; turma.nome=”Abel”; turma.idade= 20; cout <<"matricula “<<turma.matricula<<endl; cout<<”turma”<<turma.nome<<endl; cout<<”idade<<turma.idade<<endl; system ("pause"); } VETOR DE STRUCT Vimos nos exemplos anteriores uma STRUCT para uma única ocorrência, u seja para um único aluno. SRUCT ALUNO MATRICULA NOME IDADE Se a estrutura se referir a mais de um aluno, teríamos a seguinte forma: MATRICULA NOME IDADE MATRICULA NOME IDADE ATRICULA NOME IDADE MATRICULA NOME IDADE ........................................................................... ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ............................................................................. MATRICULA NOME IDADE Para resolver esta situação deveremos criar um VETOR DE STRICT conforme exemplo abaixo: #include <iostream> using namespace std; struct aluno { int matricula; char nome[30] ; int idade; }turma[2]; //quantidade de alunos = 2 int main () { int i; for (i=0;i<2;i++) { cout <<"digite o numero da matricula"<<endl; cin>> turma[i].matricula; cout <<"digite o nome"<<endl; cin>>turma[i].nome; cout <<"digite idade"<<endl; cin>>turma[i].idade; cout <<"matricula "<<turma[i].matricula<<" nome "<<turma[i].nome<<" idade "<<turma[i].idade<<endl; cout<<endl; } system ("pause"); } }
Compartilhar