C++ Struktur mit Beispiel
โก Intelligente Zusammenfassung
Struktur in C++ ist ein benutzerdefinierter Datentyp, der Elemente verschiedener Datentypen unter einem einzigen Namen zusammenfasst, sodass eine Variable zusammengehรถrige Werte wie Name, Staatsangehรถrigkeit und Alter einer Person zusammenhalten kann.

Was ist eine Struktur in C++?
Eine Struktur ist eine C++ Datenstruktur, die verwendet werden kann, um Elemente unterschiedlicher Datentypen zusammen zu speichern. In C++Eine Struktur ist ein benutzerdefinierter Datentyp. Die Struktur erstellt einen Datentyp fรผr Gruppen.ping Elemente unterschiedlicher Datentypen unter einem einzigen Datentyp.
Beispielsweise:
Angenommen, Sie mรผssen Informationen รผber eine Person, ihren Namen, ihre Staatsbรผrgerschaft und ihr Alter speichern. Sie kรถnnen Variablen wie Name, Staatsbรผrgerschaft und Alter erstellen, um die Daten separat zu speichern.
Mรถglicherweise mรผssen Sie zukรผnftig Informationen รผber viele Personen speichern. Das bedeutet, dass Variablen fรผr verschiedene Personen erstellt werden mรผssen, z. B. Name1, Staatsangehรถrigkeit1, Alter1 usw. Um dies zu vermeiden, ist es besser, eine Struktur zu erstellen.
Wann sollte eine Struktur verwendet werden?
Hier sind einige Grรผnde fรผr die Verwendung von Struktur in C++.
- Verwenden Sie eine Struktur, wenn Sie Elemente unterschiedlicher Datentypen unter einem Datentyp speichern mรผssen.
- C++ Strukturen sind ein Werttyp und kein Referenztyp. Verwenden Sie eine Struktur, wenn Sie Ihre Daten nach der Erstellung nicht mehr รคndern mรถchten.
C++ Strukturinitialisierung
So erstellen Sie ein C++ Struktur verwenden wir das Schlรผsselwort struct, gefolgt von einem Bezeichner. Der Bezeichner wird zum Namen der Struktur. Hier ist die Syntax fรผr die Erstellung einer C++ strukturieren:
Syntax:
struct struct_name { // struct members }
In der obigen Syntax haben wir das Schlรผsselwort struct verwendet. Der Strukturname ist der Name der Struktur.
Die Strukturmitglieder werden in geschweiften Klammern hinzugefรผgt. Diese Mitglieder gehรถren wahrscheinlich zu unterschiedlichen Datentypen.
Beispielsweise:
struct Person { char name[30]; int citizenship; int age; }
Im obigen Beispiel ist Person eine Struktur mit drei Mitgliedern. Zu den Mitgliedern zรคhlen Name, Staatsangehรถrigkeit und Alter. Ein Mitglied ist vom Datentyp char, wรคhrend die restlichen 2 Ganzzahlen sind. Beim Erstellen einer Struktur wird kein Speicher zugewiesen. Speicher wird erst zugewiesen, nachdem der Struktur eine Variable hinzugefรผgt wurde.
Strukturinstanzen erstellen
Im obigen Beispiel haben wir eine Struktur namens Person erstellt. Wir kรถnnen eine Strukturvariable wie folgt erstellen:
Person p;
Das p ist eine Strukturvariable vom Typ Person. Wir kรถnnen diese Variable verwenden, um auf die Mitglieder der Struktur zuzugreifen.
Auf Strukturmitglieder zugreifen
Um auf die Strukturmitglieder zuzugreifen, verwenden wir die Instanz der Struktur und den Punktoperator (.). So greifen Sie beispielsweise auf das Mitglied โageโ der Struktur โPersonโ zu:
p.age = 27;
Wir haben รผber die Instanz der Struktur auf das Mitgliedsalter der Struktur Person zugegriffen, S. Wir haben dann den Wert des Mitgliedsalters auf 27 gesetzt.
Beispiel 1:
#include <iostream> using namespace std; struct Person { int citizenship; int age; }; int main(void) { struct Person p; p.citizenship = 1; p.age = 27; cout << "Person citizenship: " << p.citizenship << endl; cout << "Person age: " << p.age << endl; return 0; }
Ausgang:
Hier ist ein Screenshot des Codes:
Code Erlรคuterung:
- Fรผgen Sie die iostream-Header-Datei in unser Programm ein, um die darin definierten Funktionen zu verwenden.
- Schlieรen Sie den std-Namespace ein, um seine Klassen zu verwenden, ohne ihn aufzurufen.
- Erstellen Sie eine Struktur mit dem Namen Person.
- Der Anfang des Strukturkรถrpers.
- Erstellen Sie ein Strukturmitglied mit dem Namen โcitizenshipโ vom Typ โIntegerโ.
- Erstellen Sie ein Strukturmitglied mit dem Namen โageโ vom Typ โIntegerโ.
- Ende des Strukturkรถrpers.
- Rufen Sie die Funktion main() auf. Die Programmlogik sollte im Hauptteil dieser Funktion hinzugefรผgt werden.
- Erstellen Sie eine Instanz der Struktur Person und geben Sie ihr den Namen p.
- Setzen Sie den Wert der Staatsbรผrgerschaft des Strukturmitglieds auf 1.
- Legen Sie den Wert des Strukturmitgliedsalters auf 27 fest.
- Geben Sie den Wert des Strukturmitglieds โcitizenshipโ zusammen mit einem anderen Text auf der Konsole aus.
- Geben Sie den Wert des Strukturmitgliedsalters zusammen mit einem anderen Text auf der Konsole aus.
- Das Programm sollte einen Wert zurรผckgeben, wenn es erfolgreich ausgefรผhrt wird.
- Ende der main()-Funktion.
Hinweise zur Struktur
Es ist mรถglich, einen Zeiger zu erstellen, der auf eine Struktur zeigt. Dies ist รคhnlich wie bei Zeigern, die auf native Datentypen wie int, float, double usw. zeigen. Beachten Sie, dass ein Zeiger in C++ speichert einen Speicherplatz.
Beispiel 2:
#include <iostream> using namespace std; struct Length { int meters; float centimeters; }; int main() { Length *ptr, l; ptr = &l; cout << "Enter meters: "; cin >> (*ptr).meters; cout << "Enter centimeters: "; cin >> (*ptr).centimeters; cout << "Length = " << (*ptr).meters << " meters " << (*ptr).centimeters << " centimeters"; return 0; }
Ausgang:
Hier ist ein Screenshot des Codes:
Code Erlรคuterung:
- Binden Sie die iostream-Header-Datei in unser Programm ein, um deren Funktionen nutzen zu kรถnnen.
- Fรผgen Sie den std-Namespace in unser Programm ein, um seine Klassen zu verwenden, ohne ihn aufzurufen.
- Erstellen Sie eine Struktur mit dem Namen โLengthโ.
- Beginn des Hauptteils der Strukturlรคnge.
- Erstellen Sie ein Strukturmitglied mit dem Namen โmetersโ vom Datentyp โGanzzahlโ.
- Erstellen Sie ein Strukturelement mit dem Namen โcentimetersโ vom Typ โIntegerโ.
- Ende des Strukturkรถrpers. Lรคnge.
- Rufen Sie die Funktion main() auf.
- Beginn des Hauptteils der main()-Funktion.
- Erstellen Sie eine Zeigervariable *ptr und eine normale Variable l vom Typ Lรคnge.
- Speichern Sie die Adresse der Variablen l in unserem Zeigervariable.
- Zeigen Sie eine Meldung auf der Konsole an, in der Sie den Benutzer auffordern, den Wert fรผr variable Zรคhler einzugeben.
- Lesen Sie den vom Benutzer รผber die Tastatur eingegebenen Wert ab. Der Zugriff auf die Mitgliedsfunktion meter erfolgt hier รผber die Zeigervariable.
- Zeigt eine Meldung auf der Konsole an, in der der Benutzer aufgefordert wird, den Wert fรผr variable Zentimeter einzugeben.
- Lesen Sie den vom Benutzer รผber die Tastatur eingegebenen Wert ab. Auf die Mitgliedsfunktion Zentimeter wird hier รผber die Zeigervariable zugegriffen.
- Zeigen Sie die vom Benutzer gelesenen Werte auf der Konsole zusammen mit anderem Text an.
- Das Programm muss bei erfolgreicher Ausfรผhrung einen Wert zurรผckgeben.
- Ende des Hauptteils der main()-Funktion.
Struktur als Funktionsargument
Sie kรถnnen einer Funktion eine Struktur als Argument รผbergeben. Dies geschieht auf die gleiche Weise wie die รbergabe eines normalen Arguments. Die Strukturvariablen kรถnnen auch an eine Funktion รผbergeben werden. Ein gutes Beispiel ist, wenn Sie die Werte von Strukturmitgliedern anzeigen mรผssen. Lassen Sie uns dies demonstrieren:
Beispiel 3:
#include<iostream> using namespace std; struct Person { int citizenship; int age; }; void func(struct Person p); int main() { struct Person p; p.citizenship = 1; p.age = 27; func(p); return 0; } void func(struct Person p) { cout << " Person citizenship: " << p.citizenship<<endl; cout << " Person age: " << p.age; }
Ausgang:
Hier ist ein Screenshot des Codes:
Code Erlรคuterung:
- Fรผgen Sie die iostream-Header-Datei in unsere Datei ein. Wir werden dann seine Funktionen nutzen, ohne dass Fehler auftreten.
- Fรผgen Sie den std-Namespace in unser Programm ein, um seine Klassen zu verwenden. Wir mรผssen den Namespace nicht aufrufen, um seine Klassen zu verwenden.
- Erstellen Sie eine Struktur mit dem Namen Person.
- Beginn des Hauptteils der Struktur Person.
- Erstellen Sie ein Mitglied der Struktur Person. Das Mitglied trรคgt den Namen โcitizenshipโ und ist vom Typ โIntegerโ.
- Erstellen Sie ein Mitglied der Struktur Person. Das Mitglied heiรt age und ist vom Typ Integer.
- Ende des Kรถrpers der Struktur Person.
- Erstellen Sie eine Funktion, die die Instanz von struct Person, p, als Argument verwendet.
- Rufen Sie die Hauptfunktion auf. Das { markiert den Anfang des Hauptteils der Funktion main().
- Erstellen Sie eine Instanz der Struktur Person und geben Sie ihr den Namen p.
- Greifen Sie auf die Strukturmitgliedsvariable โcitizenshipโ zu, indem Sie die Instanz der Struktur p verwenden und ihr den Wert 1 zuweisen.
- Greifen Sie auf die Strukturmitgliedsvariable age zu, indem Sie die Instanz der Struktur p verwenden und ihr den Wert 27 zuweisen.
- Rufen Sie die Funktion auf und รผbergeben Sie ihr die Instanz der Struktur Person, p, als Argument.
- Die Funktion muss bei erfolgreicher Ausfรผhrung einen Wert zurรผckgeben.
- Ende des Hauptteils der main()-Funktion.
- Erstellen Sie den Hauptteil der Funktion.
- Der Beginn des Funktionskรถrpers.
- Greifen Sie auf den Staatsbรผrgerschaftswert des Strukturmitglieds zu und drucken Sie ihn zusammen mit anderem Text auf der Konsole aus.
- Greifen Sie auf den Alterswert des Strukturmitglieds zu und drucken Sie ihn zusammen mit anderem Text auf der Konsole aus.
- Ende des Funktionskรถrpers.
Einschrรคnkung einer C++ Struktur
Die folgenden Strukturen unterliegen Einschrรคnkungen:
- Der Strukturdatentyp kann nicht wie integrierte Datentypen behandelt werden.
- OperaZeichen wie + - und andere kรถnnen nicht verwendet werden Strukturvariablen.
- Strukturen unterstรผtzen das Ausblenden von Daten nicht. Auf die Mitglieder einer Struktur kann von jeder Funktion unabhรคngig von ihrem Gรผltigkeitsbereich zugegriffen werden.
- Statische Elemente kรถnnen nicht innerhalb des Strukturkรถrpers deklariert werden.
- Konstruktoren kรถnnen nicht innerhalb einer Struktur erstellt werden.



