Heim > Backend-Entwicklung > C++ > Was ist die verschachtelte Struktur in der C-Sprache?

Was ist die verschachtelte Struktur in der C-Sprache?

WBOY
Freigeben: 2023-09-05 23:13:06
nach vorne
1445 Leute haben es durchsucht

Was ist die verschachtelte Struktur in der C-Sprache?

Eine Struktur innerhalb einer Struktur (oder) eine verschachtelte Struktur

Eine Struktur innerhalb einer anderen Struktur wird als verschachtelte Struktur bezeichnet.

Betrachten Sie das folgende Beispiel:

>
struct emp{
   int eno;
   char ename[30];
   float sal;
   float da;
   float hra;
   float ea;
}e;
Nach dem Login kopieren

Alle Artikel, die unter die Quote fallen, können wie unten gezeigt gruppiert und unter einer Unterstruktur deklariert werden.

stuct emp{
   int eno;
   char ename[30];
   float sal;
   struct allowance{
      float da;
      float hra;
      float ea;
   }a;
}e;
Nach dem Login kopieren

Auf das innerste Mitglied einer verschachtelten Struktur kann zugegriffen werden, indem alle zugehörigen Strukturvariablen (von außen nach innen) mithilfe des Punktoperators geändert werden.

Programm

Das folgende Programm dient der Demonstration verschachtelter Strukturen (Strukturen innerhalb von Strukturen) -

Live-Demo

#include<stdio.h>
//Declaring outer and inter structures//
struct Person//Main Structure//{
   char Name[500];
   int Age;
   char Gender;
   char temp;//To clear buffer//
   struct Address//Nested Structure//{
      char Apartment[500];
      char Street[500];
      char City[100];
      char State[100];
      int Zipcode;
   }a[20];//Nested Structure Variable//
   }p[20];//Main Structure Variable//
void main(){
   //Declaring variable for For loop//
   int i;
   //Reading User I/p//
   for (i=1;i<3;i++){//Declaring function to accept 2 people&#39;s data//
      printf("Enter the Name of person %d : ",i);
      gets(p[i].Name);
      printf("Enter the Age of person %d : ",i);
      scanf("%d",&p[i].Age);
      scanf("%c",&p[i].temp);//Clearing Buffer//
      printf("Enter the Gender of person %d : ",i);
      scanf("%c",&p[i].Gender);
      scanf("%c",&p[i].temp);//Clearing Buffer//
      printf("Enter the City of person %d : ",i);
      gets(p[i].a[i].City);
      printf("Enter the State of person %d : ",i);
      gets(p[i].a[i].State);
      printf("Enter the Zip Code of person %d : ",i);
      scanf("%d",&p[i].a[i].Zipcode);
      scanf("%c",&p[i].temp);//Clearing Buffer//
   }
   //Printing O/p//
   for (i=1;i<3;i++){
      printf("The Name of person %d is : %s</p><p>",i,p[i].Name);
      printf("The Age of person %d is : %d</p><p>",i,p[i].Age);
      printf("The Gender of person %d is : %c</p><p>",i,p[i].Gender);
      printf("The City of person %d is : %s</p><p>",i,p[i].a[i].City);
      printf("The State of person %d is : %s</p><p>",i,p[i].a[i].State);
      printf("The Zip code of person %d is : %d</p><p>",i,p[i].a[i].Zipcode);
   }
}
Nach dem Login kopieren

Ausgabe

Enter the Name of person 1 : Enter the Age of person 1 : Enter the Gender of person 1 : Enter the City of person 1 : Enter the State of person 1 : Enter the Zip Code of person 1 : Enter the Name of person 2 : Enter the Age of person 2 : Enter the Gender of person 2 : Enter the City of person 2 : Enter the State of person 2 : Enter the Zip Code of person 2 : The Name of person 1 is :
The Age of person 1 is : 0
The Gender of person 1 is :
The City of person 1 is :
The State of person 1 is :
The Zip code of person 1 is : 0
The Name of person 2 is :
The Age of person 2 is : 0
The Gender of person 2 is :
The City of person 2 is :
The State of person 2 is :
The Zip code of person 2 is : 0
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas ist die verschachtelte Struktur in der C-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage