O que são e como utilizar structs
Publicado por Marcos (última atualização em 27/08/2012)
[ Hits: 3.321 ]
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; }
Calculo de Área e Diametro do circulo
A máquina nao perdoa (jogo da velha em c -arquivo correto, agora)
Calcular pagamento com a menor quantidade de cédulas possível
Conciliando ZRAM Swap com Swap em arquivo ou partição
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Proteja seu Linux Mint com o Timeshift: Restaure o sistema mesmo que ele não inicie!
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Ajuda com o Debian 13 - Video hibrido geforce 940 mx Wayland OFF (2)
Problema com impressoras de rede (1)
Rust é o "C da nossa geração"? (10)