O que são e como utilizar structs
Publicado por Marcos (última atualização em 27/08/2012)
[ Hits: 3.574 ]
Tenho a intenção de passar uma informação básica a respeito das estruturas em C, e desde já ressaltar que para um entendimento mais "profundo" do tema é necessário mergulhar em livros de referência sobre C++.
Uma estrutura pode ser definida como um conjunto de variáveis que são referenciadas por um nome. A este conjunto de variáveis dá-se o nome de "membros da estrutura".
A definição de uma estrutura sempre termina com um ponto e vírgula.
No código abaixo apresento um exemplo simples do uso de estruturas. Crio uma estrutura chamada aluno e que tem como membros as variáveis nome e matrícula. Na sequencia defino uma variável cadastro que é do tipo aluno. Por fim, o programa solicita as informações para cadastrar os alunos e depois imprime todos os cadastros realizados.
Espero que posa ser útil.
#include <stdio.h>
#include <stdlib.h>
struct aluno{
char nome[31];
int matricula;
};
int main(){
int qtde;
aluno cadastro[10];
printf("Quantos alunos voce quer informar? ");
scanf("%d",&qtde);
while(qtde>10){
printf("Quantidade nao permitida, tente novamente...\n\n");
printf("Quantos alunos: ");
scanf("%d",&qtde);
}
//capturando os dados
for(int i=0;i<qtde;i++){
printf("\nInforme a matricula %d: ",i);
scanf("%d", &cadastro[i].matricula);
setbuf(stdin, NULL); //limpar buffer de entrada
printf("Digite o nome do aluno %d: ",i);
gets(cadastro[i].nome);
}
//imprimindo os dados
for(int i=0;i<qtde;i++){
printf("\nMatricula %d: ",cadastro[i].matricula);
printf("\nAluno: %s ",cadastro[i].nome);
puts(" ");
}
return 0;
}
Conta e substitui caracteres de uma frase
Algoritmo de ordenação: Inserction Sort
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Gerenciamento de Vídeo Híbrido (Intel/NVIDIA) via nvidia-prime no Ubuntu e derivados
Assistindo IPTV no Linux com Fred TV e Lista Free TV
Impressora Tomate MDK-007 no Ubuntu (ou qualquer distro Linux)
Acelerando a compilação de pacotes no Arch Linux (AUR) usando todos os núcleos do processador









