logo

typedef em C

O typedef é uma palavra-chave usada na programação C para fornecer alguns nomes significativos para a variável já existente no Programa C . Ele se comporta de forma semelhante à medida que definimos o alias dos comandos. Resumindo, podemos dizer que esta palavra-chave serve para redefinir o nome de uma variável já existente.

Sintaxe de typedef

 typedef 

Na sintaxe acima, ' nome_existente' é o nome de uma variável já existente enquanto ' nome alternativo' é outro nome dado à variável existente.

Por exemplo, suponha que queiramos criar uma variável do tipo int não assinado , então se torna uma tarefa tediosa se quisermos declarar múltiplas variáveis ​​deste tipo. Para superar o problema, usamos um typedef palavra-chave.

 typedef unsigned int unit; 

Nas declarações acima, declaramos o unidade variável do tipo unsigned int usando um typedef palavra-chave.

Agora podemos criar as variáveis ​​do tipo int não assinado escrevendo a seguinte declaração:

 unit a, b; 

em vez de escrever:

 unsigned int a, b; 

Até agora, observamos que o typedef palavra-chave fornece um bom atalho, fornecendo um nome alternativo para uma variável já existente. Esta palavra-chave é útil quando estamos lidando com tipos de dados longos, especialmente declarações de estrutura.

string java para booleano

Vamos entender através de um exemplo simples.

 #include int main() { typedef unsigned int unit; unit i,j; i=10; j=20; printf('Value of i is :%d',i); printf('
Value of j is :%d',j); return 0; } 

Saída

 Value of i is :10 Value of j is :20 

Usando typedef com estruturas

Considere a declaração de estrutura abaixo:

 struct student { char name[20]; int age; }; struct student s1; 

Na declaração da estrutura acima, criamos a variável de estudante digite escrevendo a seguinte instrução:

 struct student s1; 

A afirmação acima mostra a criação de uma variável, ou seja, s1, mas a afirmação é bem grande. Para evitar uma declaração tão grande, usamos o typedef palavra-chave para criar a variável do tipo estudante .

 struct student { char name[20]; int age; }; typedef struct student stud; stud s1, s2; 

Na declaração acima, declaramos a variável viga do tipo struct estudante. Agora, podemos usar o viga variável em um programa para criar as variáveis ​​do tipo estruturar aluno .

O typedef acima pode ser escrito como:

js onclick
 typedef struct student { char name[20]; int age; } stud; stud s1,s2; 

Das declarações acima, concluímos que typedef palavra-chave reduz o comprimento do código e a complexidade dos tipos de dados. Também ajuda na compreensão do programa.

Vamos ver outro exemplo onde digitamos a declaração da estrutura.

 #include typedef struct student { char name[20]; int age; }stud; int main() { stud s1; printf('Enter the details of student s1: '); printf('
Enter the name of the student:'); scanf('%s',&s1.name); printf('
Enter the age of student:'); scanf('%d',&s1.age); printf('
 Name of the student is : %s', s1.name); printf('
 Age of the student is : %d', s1.age); return 0; } 

Saída

 Enter the details of student s1: Enter the name of the student: Peter Enter the age of student: 28 Name of the student is : Peter Age of the student is : 28 

Usando typedef com ponteiros

Também podemos fornecer outro nome ou apelido para as variáveis ​​​​de ponteiro com a ajuda de o typedef .

Por exemplo, normalmente declaramos um ponteiro, conforme mostrado abaixo:

 int* ptr; 

Podemos renomear a variável de ponteiro acima conforme mostrado abaixo:

 typedef int* ptr; 

Na declaração acima, declaramos a variável do tipo interno* . Agora podemos criar a variável do tipo interno* simplesmente usando o ' ponto' variável conforme mostrado na declaração abaixo:

 ptr p1, p2 ; 

Na declaração acima, p1 e p2 são as variáveis ​​do tipo ' ponto' .