Aquí, vamos a aprender a declarar una estructura con typedef es decir, cómo definir un alias a la estructura en lenguaje de programación C ?
La estructura es un tipo de datos definido por el usuario, donde declaramos múltiples tipos de variables dentro de una unidad que se puede acceder a través de la unidad y que la unidad se conoce como “estructura” .
simple declaración de la estructura de sintaxis:
struct structure_name{
members_declarations;
};
Como sabemos que – para tener acceso a los miembros de la estructura, necesitamos un objeto de la estructura – que se conoce como una variable de estructura.
Estructura de declaración de variables del sencilla declaración de la estructura de sintaxis:
struct structure_name structure_variable;
simple declaración de la estructura Ejemplo:
//normal structure declaration
struct student_str
{
char name[30];
int age;
};
declaración de variable Estructura de la simple declaración estructura Ejemplo:
//declare structure variable for student_str
struct student_str std;
Estructura typedef
mediante el uso de typedef de palabras clave, podemos definir un alias de la estructura.
declaración de la estructura con typedef Sintaxis:
typedef struct{
members_declarations;
}structure_tag;
declaración de variables Estructura con typedef Sintaxis:
structure_tag structure_name;
Nota: No hay necesidad de utilizar struct palabra clave while declarar su variable.
declaración de estructura con typedef Ejemplo:
//structur declaration with typedef
typedef struct {
char name[30];
int age;
}employee_str;
declaración de estructura con typedef Ejemplo:
//declare structure variable for employee_str
employee_str emp;
programa Estructura / ejemplo con typedef en C
aquí, tenemos dos estructuras student_str y employee_str . student_str se declara mediante el uso de forma normal (sencilla), while employee_str se declara mediante el uso de typedef palabra clave.
Programa:
#include <stdio.h>
#include <string.h>
//normal structure declaration
struct student_str
{
char name[30];
int age;
};
//structur declaration with typedef
typedef struct {
char name[30];
int age;
}employee_str;
//main code
int main()
{
//declare structure variable for student_str
struct student_str std;
//declare structure variable for employee_str
employee_str emp;
//assign values to std
strcpy(std.name, "Amit Shukla");
std.age = 21;
//assign values to emp
strcpy(emp.name, "Abhishek Jain");
emp.age = 27;
//print std and emp structure
printf("Student detail:n");
printf("Name: %sn",std.name);
printf("Age: %dn",std.age);
printf("Employee detail:n");
printf("Name: %sn",emp.name);
printf("Age: %dn",emp.age);
return 0;
}
salida
Student detail:
Name: Amit Shukla
Age: 21
Employee detail:
Name: Abhishek Jain
Age: 27