Zuhause Persönliche Finanzen Grundlagen der Struktur für C-Programmierung - Dummies

Grundlagen der Struktur für C-Programmierung - Dummies

Inhaltsverzeichnis:

Video: Programmieren in C Tutorial #17 - Strukturen (Struct) 2025

Video: Programmieren in C Tutorial #17 - Strukturen (Struct) 2025
Anonim

Sie können sich die C-Programmiersprachenstruktur als -Multivariabel, oder mehrere Variablen in einer Liste vorstellen. Sie verwenden Strukturen, um komplexe Informationen zu speichern oder darauf zuzugreifen. Auf diese Weise können Sie verschiedene int-, char-, float-Variablen und sogar Arrays in einem einzigen Paket speichern.

Grundlagen von struct

Eine Struktur ist kein Variablentyp. Stattdessen betrachten Sie es als ein Frame, der mehrere Variablentypen enthält. In vielerlei Hinsicht ähnelt eine Struktur einem Datensatz in einer Datenbank. Zum Beispiel:

Name Age Gambling debt

Bei diesen drei Items kann es sich um Felder in einem Datenbankdatensatz handeln, aber sie können auch Member in einer Struktur sein: Name wäre eine Zeichenfolge; Alter, eine ganze Zahl; und Gambling Debt, ein vorzeichenloser Gleitkommawert. So würde ein solcher Datensatz als Struktur in C aussehen:

struct record {char name [32]; int Alter; float Schulden;};

struct ist ein C-Schlüsselwort, das eine neue Struktur einführt, definiert oder erstellt.

Datensatz ist der Name der neu angelegten Struktur.

Innerhalb der geschweiften Klammern verweilen die Mitglieder der Struktur, die in der benannten Struktur enthaltenen Variablen. Der Datensatzstrukturtyp enthält drei Membervariablen: einen Zeichenfolgennamen, ein int benanntes Alter und einen Gleitkommawert, debt.

Um die Struktur zu verwenden, müssen Sie eine Strukturvariable des von Ihnen erstellten Strukturtyps deklarieren. Zum Beispiel:

struct Datensatz Mensch;

Diese Zeile deklariert eine neue Variable des Datensatzstrukturtyps. Die neue Variable heißt Mensch .

Strukturvariablen können auch deklariert werden, wenn Sie die Struktur selbst definieren. Zum Beispiel:

struct record {char name [32]; int Alter; float Schulden;} Menschen;

Diese Anweisungen definieren die Datensatzstruktur und deklarieren eine Datensatzstrukturvariable, menschlich . Es können auch mehrere Variablen dieses Strukturtyps erstellt werden:

struct record {char name [32]; int Alter; Float Schulden;} Bill, Mary, Dan, Susie;

In diesem Beispiel werden vier Datensatzstrukturvariablen erstellt. Jede Variable hat Zugriff auf die drei in der Struktur definierten Member.

Um auf Mitglieder in einer Strukturvariablen zuzugreifen, verwenden Sie einen Punkt, der der -Memberoperator ist. Es verbindet den Namen der Strukturvariablen mit einem Mitgliedsnamen. Zum Beispiel:

printf ("Opfer:% sn", Rechnungsname);

Diese Anweisung referenziert das Namenselement in der Strukturvariable Rechnung . Ein char-Array kann wie jedes andere char-Array in Ihrem Code verwendet werden. Andere Mitglieder in der Strukturvariablen können ebenso wie ihre individuellen Gegenstücke verwendet werden:

dan.Alter = 32;

Füllen einer Struktur

Wie bei anderen Variablen können Sie einer Strukturvariablen Werte zuweisen, wenn sie erstellt werden. Sie müssen zuerst den Strukturtyp definieren und dann eine Strukturvariable deklarieren, deren Elementwerte voreingestellt sind. Stellen Sie sicher, dass die voreingestellten Werte mit der Reihenfolge und dem Typ der in der Struktur definierten Elemente übereinstimmen, wie in Deklarieren einer initialisierten Struktur gezeigt.

ERKLÄRUNG EINER INITIALISIERTEN STRUKTUR

#include int main () {struct präsident {char name [40]; int Jahr;}; struct president first = {"George Washington", 1789}; printf ("Der erste Präsident war% sn", erster Name); printf ("Er wurde in% dn eingeweiht", erstes Jahr); return (0);}

Übung 1 : Erstellen Sie ein neues Programm, indem Sie den Quellcode aus Deklarieren einer initialisierten Struktur in den Editor eingeben. Baue und laufe.

Sie können eine Struktur auch deklarieren und in einer Anweisung initialisieren:

struct president {char name [40]; int Jahr;} zuerst = {"George Washington", 1789};

Übung 2 : Ändern Sie Ihren Quellcode aus Übung 1, sodass die Struktur und Variable als eine Anweisung deklariert und initialisiert werden.

Obwohl Sie eine Struktur deklarieren und eine Strukturvariable wie gerade gezeigt initialisieren können, können Sie nur einmal mit diesem Trick davonkommen. Sie können die Technik nicht verwenden, um die zweite Strukturvariable zu deklarieren, die auf herkömmliche Weise ausgeführt werden muss, wie in Deklarieren einer initialisierten Struktur gezeigt.

Übung 3 : Fügen Sie zu Ihrem Code noch eine zweite President-Strukturvariable hinzu, die diese Struktur mit Informationen über den zweiten Präsidenten, John Adams, initialisiert, der 1797 eingeweiht wurde. Zeigen Sie den Inhalt beider Strukturen an.

So erstellen Sie ein Array mit Strukturen

Das Erstellen einzelner Strukturvariablen ist so langweilig und verschwenderisch wie das Erstellen einer Reihe von individuellen Variablentypen. Die Lösung für mehrere Strukturen ist die gleiche wie für mehrere einzelne Variablen: ein Array.

Ein Strukturarray wird wie folgt deklariert:

struct score player [4];

Diese Anweisung deklariert ein Array von Bewertungsstrukturen. Das Array heißt player und enthält vier Strukturvariablen als Elemente.

Auf die Strukturen im Array wird mit einer Kombination aus Array- und Strukturnotation zugegriffen. Zum Beispiel:

Spieler [2]. name

Die Variable in der vorhergehenden Zeile greift auf das Namenselement im dritten Element des Player-Struktur-Arrays zu. Ja, das ist das dritte Element, weil das erste Element wie folgt referenziert würde:

player [0]. name

Arrays beginnen die Nummerierung mit dem Element 0, nicht mit Element 1.

Zeile 10 in Arrays von Strukturen deklariert ein Array von vier Bewertungsstrukturen. Das Array wird als Spieler bezeichnet. Die Zeilen 13 bis 19 füllen jede Struktur im Array. Die Zeilen 21 bis 27 zeigen die Elementwerte jeder Struktur an.

ARRAYS DER STRUKTUREN

#include int main () {struct scores {char name [32]; int Punktzahl;}; Struct Scores Spieler [4]; int x; für (x = 0; x <4; x ++) {printf ("Spieler eintragen% d:", x + 1); scanf ("% s", Spieler [x].Name); printf ("Geben Sie ihre Punktzahl ein:"); scanf ("% d", & Spieler [x]. score);} puts ("Spielerinfo"); printf ("# tNametScoren"); für (x = 0; x <4; x ++) {printf ("% dt% st% 5dn", x + 1, Spieler [x]. Name, Spieler [x]. Punktzahl);} return (0);}

Übung 4 : Geben Sie den Quellcode aus Arrays of Structures in Ihren Editor ein. Erstellen Sie das Programm, und führen Sie es aus. Versuchen Sie, die Punktzahlen auf weniger als fünf Stellen zu halten, damit sie richtig ausgerichtet sind.

Übung 5 : Fügen Sie Code zu Arrays von Strukturen hinzu, so dass die Anzeige von Strukturen mit der höchsten zuerst aufgelisteten Punktzahl sortiert wird. Ja, du kannst das tun. Das Sortieren eines Array von Strukturen funktioniert genauso wie das Sortieren eines anderen Arrays.

Hier ein Hinweis: Zeile 27 der Lösung sieht so aus:

player [a] = player [b];

Sie können Struktur-Array-Elemente so vertauschen, wie Sie beliebige Array-Elemente austauschen können. Sie müssen die Mitglieder der Strukturvariablen nicht austauschen.

Grundlagen der Struktur für C-Programmierung - Dummies

Die Wahl des Herausgebers

ÜBen Mathe-Fragen für die Praxis: Sequenzen - Dummies

ÜBen Mathe-Fragen für die Praxis: Sequenzen - Dummies

Wenn Sie eine Frage zur Praxis Core-Prüfung beantworten Wenn Sie eine arithmetische oder geometrische Sequenz lösen müssen, denken Sie daran: Es geht darum, regelmäßige Muster zu finden - und manchmal rückwärts zu arbeiten. In den folgenden Übungsfragen fängst du damit an, einen bestimmten Begriff in einer Folge zu finden (einfach: suche einfach nach dem Unterschied zwischen jedem ...

ÜBen Mathematische Fragen für die Praxis: Ähnliche und kongruente Formen - Dummies

ÜBen Mathematische Fragen für die Praxis: Ähnliche und kongruente Formen - Dummies

Auch wenn zwei Formen aussehen identisch, können sie nicht sein. Zum Beispiel können Sie bei der Praxis Core-Prüfung auf eine Frage stoßen, bei der zwei Formen gleich aussehen, aber es wird Ihnen gesagt, sie seien "ähnlich". " Was bedeutet das? Was ist, wenn sie als "kongruent" gekennzeichnet sind? Wenn Sie sich nicht sicher sind, sollten die folgenden Übungsfragen (und ihre Erklärungen) ...

ÜBen Mathematische Fragen für die Praxis: Vereinfachen eines algebraischen Ausdrucks - Dummys

ÜBen Mathematische Fragen für die Praxis: Vereinfachen eines algebraischen Ausdrucks - Dummys

Einige algebraische Ausdrücke auf der Praxis Core Prüfung kann einschüchternd aussehen, und Sie können sogar auf sie aufgeben und weitermachen. Wie Sie in den folgenden Übungsfragen sehen werden, können Sie jedoch einige einfache Techniken verwenden, wie das Faktorisieren und Kombinieren von ähnlichen Begriffen, um sie zu lösen. Übungsfragen Welche der folgenden ist die vereinfachte ...

Die Wahl des Herausgebers

Fotografieren im Sportmodus mit einer Canon EOS Rebel T3-Kamera - Dummies

Fotografieren im Sportmodus mit einer Canon EOS Rebel T3-Kamera - Dummies

Der Sportmodus der Canon Rebel T3 und T3i führt zu einer Reihe von Einstellungen, mit denen Sie sich bewegende Motive fotografieren können. Zunächst wählt die Kamera eine kurze Verschlusszeit aus, die zum Stoppen der Bewegung benötigt wird. "Farben, Schärfe und Kontrast sind alle im Sportmodus Standard, wobei keine der Anpassungen im Portrait ...

Aufnahme von Bildern im Nahaufnahmemodus mit einer Canon EOS Rebel T3-Kamera

Aufnahme von Bildern im Nahaufnahmemodus mit einer Canon EOS Rebel T3-Kamera

Der Nahaufnahme-Modus der Canon Rebel T3 und T3i ermöglicht es Ihnen nicht, näher am Motiv zu fokussieren als bei einigen Nicht-Spiegelreflexkameras. Die Nahfokussierungsfähigkeiten Ihrer Kamera hängen ganz von der Linse ab, die Sie verwenden. (In der Bedienungsanleitung Ihres Objektivs sollte die minimale Fokussierentfernung angegeben werden.) Auswahl des Nahaufnahmemodus ...

Fotografieren im Querformat mit einer Canon EOS Rebel T3-Kamera - Dummies

Fotografieren im Querformat mit einer Canon EOS Rebel T3-Kamera - Dummies

Der Landschaftsmodus der Canon Rebel T3 und T3i, der für die Aufnahme von Aussichtspunkten, Stadtskylinen und anderen großformatigen Motiven konzipiert wurde, erzeugt eine große Schärfentiefe. Infolgedessen erscheinen Objekte, die sich sowohl in der Nähe der Kamera als auch in einiger Entfernung befinden, scharf fokussiert. Wie im Hochformat-Modus erreicht der Querformat-Modus die größere Schärfentiefe durch Manipulieren von ...

Die Wahl des Herausgebers

Erstellen und Verwenden von Verknüpfungen im dynamischen GP-Navigationsbereich - Dummies

Erstellen und Verwenden von Verknüpfungen im dynamischen GP-Navigationsbereich - Dummies

Microsoft Dynamics GP-Verknüpfungen werden angezeigt. Der obere Teil des Navigationsfensters, wenn Sie Ihre Dynamics GP Homepage anzeigen. Verwenden Sie Verknüpfungen, um häufig verwendete Fenster und Ressourcen in Dynamics GP schnell zu öffnen. Zum Beispiel können Sie einen Satz von Verknüpfungen zu den Fenstern erstellen, die Sie regelmäßig verwenden, und einen anderen Satz für die ...

MYOB Software für Dummies-Spickzettel (Neuseeland-Ausgabe) - Dummies

MYOB Software für Dummies-Spickzettel (Neuseeland-Ausgabe) - Dummies

Sie können MYOB verwenden für Ihre Geschäftsanforderungen schnell und einfach durch diese einfachen Verknüpfungen. Wenn Sie zusätzliche Hilfe benötigen, bieten viele Websites MYOB-Unterstützung an.

MYOB Software für Dummies Cheat Sheet (Australische Ausgabe) - Dummies

MYOB Software für Dummies Cheat Sheet (Australische Ausgabe) - Dummies

Mit MYOB für Ihre Unternehmensanforderungen kann durch diese einfachen Abkürzungen noch schneller und einfacher gemacht werden. Und wenn Sie Hilfe benötigen, gibt es viele Websites, die Unterstützung anbieten.