Os registros, chamados de estruturas (structures ou structs) na linguagem C, permitem agrupar diferentes informações relacionadas em uma única entidade lógica.
Esse recurso é amplamente utilizado para representar objetos do mundo real dentro de programas, como alunos, veículos, produtos, funcionários, livros, sensores, entre outros.
A definição de um registro utiliza a palavra-chave struct:
struct Aluno {
char nome[100];
int matricula;
int idade;
float media;
};
Observe que essa declaração não cria uma variável. Ela apenas define um novo modelo de dados chamado Aluno.
Podemos interpretar a estrutura acima da seguinte forma:
| Campo | Tipo | Descrição |
|---|---|---|
| nome | char[100] |
Nome do aluno |
| matricula | int |
Número de matrícula |
| idade | int |
Idade do aluno |
| media | float |
Média final |
Após definir a estrutura, podemos criar variáveis desse tipo:
struct Aluno estudante;
Agora a variável estudante possui todos os campos definidos no registro.
Visualmente:
estudante
├── nome
├── matricula
├── idade
└── media
Também é possível criar várias variáveis:
struct Aluno aluno1;
struct Aluno aluno2;
struct Aluno aluno3;
O acesso aos campos de um registro é realizado através do operador ponto (.).
struct Aluno estudante;
estudante.matricula = 2025001;
estudante.idade = 18;
estudante.media = 8.7;