Na seção anterior, vimos como criar registros utilizando a palavra-chave struct. Embora essa abordagem funcione corretamente, ela possui uma pequena inconveniência: sempre que desejamos declarar uma variável, precisamos escrever novamente a palavra struct.
Por exemplo:
struct Aluno aluno1;
struct Aluno aluno2;
struct Aluno turma[40];
Em programas pequenos isso não costuma ser um problema. Entretanto, à medida que o código cresce, essa repetição pode reduzir a legibilidade e tornar a escrita mais trabalhosa.
Para resolver essa situação, a linguagem C oferece o comando typedef.
typedef?A palavra-chave typedef permite criar um apelido (alias) para um tipo de dado existente.
Por exemplo, podemos criar um novo nome para o tipo unsigned int:
typedef unsigned int uint;
Após essa definição, podemos utilizar uint como se fosse um tipo nativo da linguagem:
uint idade;
uint quantidade;
Observe que nenhum novo tipo foi criado internamente. Apenas foi definido um nome alternativo para um tipo já existente.
typedef com RegistrosO uso mais comum de typedef ocorre justamente com registros.
Considere a seguinte definição:
struct Aluno {
char nome[100];
int matricula;
float media;
};
Para criar uma variável, é necessário escrever:
struct Aluno estudante;
Podemos simplificar essa definição utilizando typedef:
typedef struct Aluno {
char nome[100];
int matricula;
float media;
} Aluno;