C++ Programmierung · 3 min read · Nov 24, 2025

Linux C Programmierung Tutorial Teil 27 - Array von Strukturen

In dieser fortlaufenden C-Programmierung Tutorial-Serie haben wir zuletzt über Strukturen gesprochen. Wir haben bereits die Grundlagen von Strukturen behandelt, wie Strukturen mit Funktionen verwendet werden können, sowie das Konzept von Zeigern auf Strukturen.

Nun, um das Konzept der Strukturen weiter auszubauen, werden wir besprechen, wie man ein Array von Strukturen mit leicht verständlichen Beispielen erstellt.

Array von Strukturen in der C-Programmiersprache

Also, lass uns anfangen. Hier ist eine einfache Struktur namens ‘student_details’, die, wie du sehen kannst, verwendet werden kann, um die Rollnummer und die Noten für Studenten zu speichern:

struct student_details{  
int roll_no;  
int marks;  
};

Jetzt, nehmen wir an, es gibt insgesamt 5 Studenten, und die Anforderung ist, Eingaben vom Benutzer über diese Studentendetails zu akzeptieren. Eine Möglichkeit, den Code dafür zu schreiben, ist:

#include   
  
struct student_details{  
int roll_no;  
int marks;  
};  
  
int main()  
{  
 struct student_details obj1;  
 struct student_details obj2;  
 struct student_details obj3;  
 struct student_details obj4;  
 struct student_details obj5;  
 ...  
 ...  
 ...  

Oder vielleicht so etwas:

#include   
  
struct student_details{  
int roll_no;  
int marks;  
};  
  
int main()  
{  
 struct student_details obj1, obj2, obj3, obj4, obj5;  
 ...  
 ...  
 ...

Jetzt, es ist nicht schädlich, wenn du die oben genannten Ansätze verfolgst. Die einzige Sorge, die aufkommt, ist, ob diese Ansätze skalierbar sind. Ich meine, was ist, wenn du anstelle von 5, sagen wir, 50 Objekte oder Instanzen erstellen musst? In diesem Fall wird das Befolgen dieser Ansätze das Schreiben und die Wartung des Codes definitiv viel komplexer machen.

Gibt es also eine Lösung? Nun, ja. Ein besserer Weg ist es, ein Array von ‘student_details’ Strukturen zu erstellen. So geht’s:

struct student_details obj[5];

Im Folgenden ist ein vollständiges Programm, das dieses Struktur-Array nutzt:

#include   
  
struct student_details{  
int roll_no;  
int marks;  
};  
  
int main()  
{  
 struct student_details obj[5];  
 int i;  
   
 for(i=0;i<5;i++)  
 {  
 printf("\n Geben Sie die Rollnummer ein: ");  
 scanf("%d", &(obj[i].roll_no));  
 printf("\n Geben Sie die Noten (von 100) ein: ");  
 scanf("%d", &(obj[i].marks));  
 }  
   
 printf("\n Hier sind die Daten, die Sie eingegeben haben::");  
   
 for(i=0;i<5;i++)  
 {  
 printf("\n Rollnummer: %d", (obj[i].roll_no));  
 printf("-- Noten: %d", (obj[i].marks));  
 }  
   
  
 return 0;  
}

Hier haben wir die ‘student_details’ Struktur verwendet, die wir zuvor besprochen haben, und ein Array von 5 Objekten dieses Typs erstellt. Dann fragt das Programm den Benutzer, die Rollnummer und die Noten der Studenten nacheinander einzugeben. Die Informationen zu jedem Studenten werden in jeder Instanz des Struktur-Arrays gespeichert. Und schließlich werden die gespeicherten Informationen als Ausgabe an den Benutzer zurückgegeben.

Hier ist die Ausgabe in meinem Fall:

Geben Sie die Rollnummer ein: 1   
   
 Geben Sie die Noten (von 100) ein: 67   
   
 Geben Sie die Rollnummer ein: 2   
   
 Geben Sie die Noten (von 100) ein: 73   
   
 Geben Sie die Rollnummer ein: 3   
   
 Geben Sie die Noten (von 100) ein: 56   
   
 Geben Sie die Rollnummer ein: 4   
   
 Geben Sie die Noten (von 100) ein: 52   
   
 Geben Sie die Rollnummer ein: 5   
   
 Geben Sie die Noten (von 100) ein: 85   
   
 Hier sind die Daten, die Sie eingegeben haben::   
 Rollnummer: 1-- Noten: 67   
 Rollnummer: 2-- Noten: 73   
 Rollnummer: 3-- Noten: 56   
 Rollnummer: 4-- Noten: 52   
 Rollnummer: 5-- Noten: 85

Mit diesem Ansatz kannst du dein Programm leicht skalieren. Das bedeutet, selbst wenn es 50 Studenten gibt, deren Informationen gespeichert und gedruckt werden müssen, musst du nur die Größe des Arrays auf 50 erhöhen und sehr wenige verwandte Änderungen vornehmen. Der Rest des Codes bleibt gleich. Kurz gesagt, du kannst die Skalierbarkeit leicht handhaben, wenn du Arrays verwendest, im Vergleich zu den Ansätzen, die wir zu Beginn des Tutorials besprochen haben.

Fazit

In diesem Tutorial haben wir das grundlegende Konzept des Arrays von Strukturen behandelt. Anhand leicht verständlicher Beispiele haben wir besprochen, warum ein Struktur-Array wichtig ist, wann man es verwenden sollte und wie man es verwendet. Du wirst geraten, die Beispiele aus diesem Tutorial auf deinem Computer auszuprobieren. Und falls du Zweifel oder Fragen hast, hinterlasse einen Kommentar unten.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.