La inicialización estructura anidada en lenguaje C.

aprender: Cómo declarar, inicializar estructura anidada en el lenguaje de programación C? En este tutorial, vamos a aprender acerca de la estructura jerarquizada, su declaración, la inicialización y el acceso a los usuarios.

¿Cuál es la estructura anidada?

Estructura es un usuario definir el tipo de datos que contiene uno o más diferentes tipos de variables. Cuando una estructura de definición tiene un objeto de otra estructura, que se conoce como estructura anidada .

Considere el siguiente definiciones de la estructura

Estructura Definiciones

Aquí, estamos definiendo dos estructura fechaDeNacimiento y studentDetails y declarando un objeto de estructura fechaDeNacimiento dentro de la estructura studentDetails .

struct dateOfBirth
{
int dd,mm,yy;
};
struct studentDetails
{
char name[30];
int age;
struct dateOfBirth dob;
};

Aquí, la estructura fechaDeNacimiento contiene variables dd , mm y yy a almacenar la fecha y la estructura studentDetails contiene nombre , edad y el objeto de la estructura fechaDeNacimiento .

Estructura de inicialización

estructura puede ser inicializado por dos métodos

Método 1

struct studentDetails std={"Mike",21,{15,10,1990}};

O

struct studentDetails std={"Mike",21,15,10,1990};

Aquí, “Mike” y 21 se almacenarán en el nombre de los miembros y la edad de estructura studentDetails , while valores de 15, 10 y 1990 se almacenarán en la dd, mm, y yy de estructura fechaDeNacimiento .

Aquí, es el ejemplo inicializando los valores de uso de este método ( Sólo main () es aquí, lugar dado definiciones de la estructura antes de la () )

int main()
{
struct studentDetails std={"Mike",21,15,10,1990};
printf("Name: %s, Age: %dn",std.name,std.age);
printf("DOB: %d/%d/%dn",std.dob.dd,std.dob.mm,std.dob.yy);
return 0;
}

salida sería

Name: Mike, Age: 21
DOB: 15/10/1990

Método 2

struct dateOfBirth dob={15,10,1990};
struct studentDetails std={"Mike",21,dob};

Inicializar la primera estructura, luego use variable de estructura en el estado de inicialización de la estructura main (padre).

int main()
{
struct dateOfBirth dob={15,10,1990};
struct studentDetails std={"Mike",21,dob};
printf("Name: %s, Age: %dn",std.name,std.age);
printf("DOB: %d/%d/%dn",std.dob.dd,std.dob.mm,std.dob.yy);
return 0;
}

salida sería

Name: Mike, Age: 21
DOB: 15/10/1990


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *