Grin logo
de en es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Computer Science - Software

Strukturen und Zeiger in C++

Title: Strukturen und Zeiger in C++

Script , 1999 , 8 Pages , Grade: 1,0

Autor:in: Thomas Kramer (Author)

Computer Science - Software
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

Das Skript dient dem besseren Verständnis von schwierigen Konzepten der Programmiersprache C durch Programmier-Beispiele (Beispiel-Code). Es ist für lernende Programmieranfänger gedacht. Zum Inhalt: Zunächst wird das Konzept von Strukturen erläutert, wie sie in C definiert werden und wie man mit den Strukturen umgeht (und wie nicht). Der zweite Teil beschreibt die Möglichkeiten mit der Programmiersprache C auf Dateien zuzugreifen, also zum Beispiel etwas aus Dateien zu lesen und dort abzuspeichern. Ein oft schwieriges Thema für Anfänger sind Zeiger oder auch Pointer genannt. Zeigen wird hier ein großes Kapitel gewidmet. Es wird erklärt, wie man Zeiger deklariert und wie man Nutzfelder erstellt bzw. löscht. Anschließend wird das erste Thema (Strukturen) mit dem dritten (Zeiger) verknüpft. Es geht um Strukturen in Zeigern. Anwendungen sind z.B. verkettete Listen, oder verkettete Binärbäume. Die Programmierung von diesen zwei Anwendungen wird sowohl verbal als auch mit Code-Beispielen sehr einfach und verständlich erklärt. Ein abschließendes Kapitel befasst sich noch mit der Benutzung Iteration und Rekursion in C-Programmen.

Excerpt


Inhaltsverzeichnis

I. Strukturen

II. Dateien

III. Zeiger

IV. Zeiger in Strukturen

V. Iteration & Rekursion

Zielsetzung & Themen

Diese Zusammenstellung vermittelt zentrale Konzepte der Programmierung in C++ für Studierende, wobei der Fokus auf der effizienten Speicherverwaltung und der algorithmischen Umsetzung komplexer Datenstrukturen liegt. Ziel ist die methodische Anwendung von Strukturen, Dateioperationen, Zeigern und rekursiven Verfahren.

  • Grundlagen der Datenstruktur-Definitionen und Variablendeklaration
  • Dateiverarbeitung mittels Datei-Zeigern und Schreib-Lese-Operationen
  • Dynamische Speicherverwaltung und Zeigerarithmetik
  • Implementierung verketteter Listen und Binärbäume
  • Vergleich und Anwendung iterativer versus rekursiver Algorithmen

Auszug aus dem Buch

Verkettete Binärbäume:

struct Objekt { int num; // Nutzfeld 1 Objekt *li; // Zeiger auf ein Objekt (links) // mit derselben Struktur Objekt *re; // Zeiger auf ein Objekt (rechts) // mit derselben Struktur };

void Objekt_Erstellen (t, **k) // Hier wird ein Objekt k erstellt, das // die Adresse von einem Zeigerfeld (z.B. // (*k) li) des vorherigen Objektes ein- // getragen bekommt. k zeigt nun auf das // Zeigerfeld (*k) li, das aber bis // jetzt noch keinen Inhalt hat.

{ *k = (Objekt*) malloc (sizeof(Objekt)); // Erstelle neues Objekt (**k) // Adresse von diesem Objekt // wird im Zeiger (*k) li // hinterlegt, der jetzt auf // das Objekt **k zeigt. // Zeigerfeld (*k) li des // vorherigen Objektes hat nun // einen Inhalt bekommen // (Adresse vom neuen folgen- // den Objekt)

if (t > 0) // Hat das Objekt Nachfolger ??? { Objekt_Erstellen (t-1, &((*k) -> li)); Objekt_Erstellen (t-1, &((*k) -> re)); // Zeiger (*k -> li) bzw. Zeiger (*k -> re) werden durch den // rekursiven Aufruf der Prozedur wieder an den Anfang der // Prozedur geschickt, damit diese Felder auch im Speicher- // bereich der nachfolgenden Objekte verfügbar sind. } else { (*k) -> li = NULL; // Die Zeiger der Blätter werden gelöscht (*k) -> re = NULL; } }

Zusammenfassung der Kapitel

I. Strukturen: Erläutert die Definition von Datenstrukturen in C++ und zeigt, wie Variablen mit diesen Strukturen deklariert und initialisiert werden.

II. Dateien: Behandelt die Dateiverarbeitung, insbesondere das Öffnen, Schließen sowie das Lesen und Schreiben von Daten mittels Dateizeigern.

III. Zeiger: Konzentriert sich auf das Erstellen von Zeigervariablen und die manuelle Speicherverwaltung (Heap) mittels malloc und free.

IV. Zeiger in Strukturen: Beschreibt die Implementierung komplexer, dynamischer Datenstrukturen wie verkettete Listen durch die Nutzung von Zeigern innerhalb von Strukturen.

V. Iteration & Rekursion: Vergleicht iterative Berechnungsverfahren mit rekursiven Lösungsansätzen und demonstriert deren Anwendung in C++.

Schlüsselwörter

C++, Strukturen, Zeiger, Speicherverwaltung, Heap, Dateien, Verkettete Listen, Binärbäume, Iteration, Rekursion, Datenfelder, malloc, free, Dateizeiger, Datentyp.

Häufig gestellte Fragen

Worum geht es in diesem Dokument grundsätzlich?

Das Dokument dient als kompakte Zusammenfassung von C++-Befehlen und Konzepten, die speziell für den Lehrinhalt des zweiten Semesters im Bereich Wirtschaftsinformatik aufbereitet wurden.

Welche Themenfelder stehen im Mittelpunkt?

Die Schwerpunkte liegen auf der Speicherorganisation, der Arbeit mit Dateisystemen und der Implementierung fortgeschrittener Datenstrukturen.

Was ist das primäre Ziel dieser Zusammenfassung?

Ziel ist es, den Studierenden eine praktische Referenz für die Implementierung dynamischer Datenstrukturen und die effiziente Nutzung der Speicherverwaltung an die Hand zu geben.

Welche wissenschaftliche Methode wird primär verwendet?

Es wird ein instruktiver Ansatz gewählt, der durch Code-Beispiele, grafische Speicherabbildungen und algorithmische Beschreibungen die Funktionsweise der C++-Befehle verdeutlicht.

Was wird im Hauptteil behandelt?

Der Hauptteil gliedert sich in die Bereiche Strukturen, Dateioperationen, Zeigertechnik, dynamische Listen/Bäume sowie die Abgrenzung von Iteration und Rekursion.

Durch welche Schlüsselwörter lässt sich der Inhalt charakterisieren?

Die wichtigsten Begriffe umfassen C++, Speicherverwaltung, Zeiger, Verkettete Listen, Binärbäume und Rekursion.

Was unterscheidet die `malloc`-Funktion von einer statischen Variablendeklaration?

Während statische Variablen zur Kompilierzeit Speicher erhalten, erlaubt `malloc` die dynamische Zuweisung von Speicherplatz auf dem Heap zur Laufzeit, was für dynamische Datenstrukturen essentiell ist.

Warum ist die Unterscheidung zwischen `SEEK_SET` und `SEEK_END` bei `fseek` wichtig?

Diese Parameter bestimmen den Referenzpunkt für die Dateizeiger-Positionierung, was entscheidend ist, um entweder vom Dateianfang oder vom Dateiende aus exakt zu navigieren.

Excerpt out of 8 pages  - scroll top

Details

Title
Strukturen und Zeiger in C++
College
European Business School - International University Schloß Reichartshausen Oestrich-Winkel  (Wirtschaftsinformatik)
Grade
1,0
Author
Thomas Kramer (Author)
Publication Year
1999
Pages
8
Catalog Number
V1921
ISBN (eBook)
9783638111805
Language
German
Tags
Programmiersprache Strukturen Zeiger Pointer
Product Safety
GRIN Publishing GmbH
Quote paper
Thomas Kramer (Author), 1999, Strukturen und Zeiger in C++, Munich, GRIN Verlag, https://www.grin.com/document/1921
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  8  pages
Grin logo
  • Grin.com
  • Shipping
  • Contact
  • Privacy
  • Terms
  • Imprint