Struct
3 pág.

Struct


DisciplinaEstrutura de Dados I9.420 materiais187.522 seguidores
Pré-visualização1 página
STRUCT \u2013 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 <<&quot;Hoje he dia \u201c<<hoje.dia<<endl;
 cout<<\u201dhoje he mes\u201c<< hoje.mes<<endl;
 cout<<\u201dhoje he ano\u201d <<hoje.ano<<endl; 
    system (&quot;pause&quot;);
}
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=\u201dAbel\u201d; 
    turma.idade= 20; 
    cout <<&quot;matricula \u201c<<turma.matricula<<endl;
 cout<<\u201dturma\u201d<<turma.nome<<endl;
 cout<<\u201didade<<turma.idade<<endl; 
    system (&quot;pause&quot;); 
    }
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 <<&quot;digite o numero da matricula&quot;<<endl;
 cin>> turma[i].matricula;
	 cout <<&quot;digite o nome&quot;<<endl;
 cin>>turma[i].nome;
 cout <<&quot;digite idade&quot;<<endl;
 cin>>turma[i].idade; 
 cout <<&quot;matricula &quot;<<turma[i].matricula<<&quot; nome &quot;<<turma[i].nome<<&quot; idade &quot;<<turma[i].idade<<endl; 
	cout<<endl;
	}
 system (&quot;pause&quot;); 
 }
     
    }
Jardel
Jardel fez um comentário
pra quem não sabe nada de c++ essa explicação foi perfeita
0 aprovações
Carregar mais