Nicht aus der Schweiz? Besuchen Sie lehmanns.de

C/C++

Von den Grundlagen zur professionellen Programmierung
Media-Kombination
1344 Seiten
2008 | 4. Auflage
Galileo Press
978-3-89842-839-2 (ISBN)

Lese- und Medienproben

C/C++ - Ulrich Kaiser, Christoph Kecher
CHF 55,85 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
Sie möchten C/C++ verstehen und anwenden lernen? Dieses Buch bietet eine systematische Einführung. Der Bogen spannt sich dabei von einfachen Beispielprogrammen hin zu anspruchsvollen Algorithmen und Datenstrukturen. Auch über die Beschäftigung mit den Programmiersprachen hinaus, erfahren Sie einiges über:
Aussagenlogik
Kombinatorik
Grafikprogrammierung
Leistungsanalyse und -messung
Sortierverfahren
Listen, Bäume, Hashtabellen
Graphentheorie
Objektorientierte Programmierung
Die Themengebiete werden dabei nicht theoretisch, sondern unmittelbar praktisch programmierend angegangen und erarbeitet. Zahlreiche Merksätze und Übungen am Ende eines jeden Kapitels lassen Sie spielerisch lernen und verstehen.
Das Buch dient Ihnen als umfassender Begleiter: Es ist Lehr- und Arbeitsbuch, Nachschlagewerk und gibt fertige, sofort einsetzbare Lösungen an die Hand.

Ulrich Kaiser ist als freier Autor tätig. Der erfolgreiche Sportjournalist war jahrelang Chefredakteur beim Golf Journal . Er schreibt Golf-Kolumnen in verschiedenen Fachmagazinen und Tageszeitungen.

Christoph Kecher ist als Software-Ingenieur bei der Internationalen Kapitalanlagegesellschaft mbH tätig. Seine Tätigkeitsbereiche umfassen Data Warehouse-Technologien, Java, .Net, UML und Software-Qualitätssicherung.

1 Einige Grundbegriffe ... 19


... 1.1 Algorithmus ... 21

... 1.2 Datenstruktur ... 25

... 1.3 Programm ... 27

... 1.4 Aufgaben ... 30



2 Einführung in die Programmierung ... 33


... 2.1 Die Programmierumgebung ... 38



3 Ausgewählte Sprachelemente von C ... 41


... 3.1 Programmrahmen ... 41

... 3.2 Zahlen ... 42

... 3.3 Variablen ... 42

... 3.4 Operationen ... 44

... 3.5 Kommentare ... 48

... 3.6 Elementare Ein-/Ausgabe ... 48

... 3.7 Kontrollfluss ... 50

... 3.8 Beispiele ... 59

... 3.9 Aufgaben ... 67



4 Arithmetik ... 71


... 4.1 Folgen ... 71

... 4.2 Summen ... 78

... 4.3 Produkte ... 85

... 4.4 Aufgaben ... 87



5 Aussagenlogik ... 95


... 5.1 Aussagen ... 95

... 5.2 Logische Operatoren ... 96

... 5.3 Darstellung boolescher Funktionen ... 104

... 5.4 Vereinfachung boolescher Ausdrücke ... 108

... 5.5 Logische Operatoren in C ... 117

... 5.6 Programmierbeispiele ... 118

... 5.7 Aufgaben ... 122



6 Elementare Datentypen und ihre Darstellung ... 127


... 6.1 Zahlendarstellungen ... 127

... 6.2 Bits und Bytes ... 134

... 6.3 Skalare Datentypen in C ... 138

... 6.4 Bit-Operationen ... 145

... 6.5 Programmierbeispiele mit Zeichen, Zahlen und Bit-Operationen ... 148

... 6.6 Arrays und Zeichenketten ... 153

... 6.7 Programmierbeispiele mit Arrays und Strings ... 165

... 6.8 Aufgaben ... 171



7 Modularisierung ... 179


... 7.1 Funktionen und Unterprogramme ... 179

... 7.2 Rekursion ... 186

... 7.3 Der Stack ... 195

... 7.4 Globale, lokale und statische Variablen ... 198

... 7.5 Die C-Runtime-Library ... 200

... 7.6 Beispiele ... 226

... 7.7 Aufgaben ... 241



8 Zeiger und Adressen ... 255


... 8.1 Zeigerarithmetik ... 259

... 8.2 Arrays und Zeiger ... 261

... 8.3 Funktionszeiger ... 264

... 8.4 Komplexe Variablendeklarationen ... 268

... 8.5 Aufgaben ... 270



9 C-Referenz (Teil 1) 273


... 9.1 Reservierte Wörter ... 273

... 9.2 Identifier ... 273

... 9.3 Numerische Werte ... 274

... 9.4 Werte für Zeichen und Zeichenketten ... 275

... 9.5 Skalare Datentypen ... 276

... 9.6 Variablen ... 276

... 9.7 Arrays ... 281

... 9.8 Operatoren ... 281

... 9.9 Funktionen ... 295

... 9.10 Kontrollstrukturen ... 297

... 9.11 Der Preprozessor ... 305

... 9.12 Der Aufbau von Programmdateien ... 311

... 9.13 Einige Coding-Standards ... 314



10 Kombinatorik ... 317


... 10.1 Kombinatorische Grundaufgaben ... 317

... 10.2 Kombinatorische Algorithmen ... 326

... 10.3 Beispiele ... 337

... 10.4 Aufgaben ... 348



11 Grafikprogrammierung ... 353


... 11.1 IGEL ... 353

... 11.2 Beispiele ... 362

... 11.3 Aufgaben ... 377



12 Leistungsanalyse und -messung von Algorithmen ... 383


... 12.1 Leistungsanalyse ... 386

... 12.2 Leistungsmessung ... 399

... 12.3 Mathematische Grundfunktionen ... 404

... 12.4 Laufzeitklassen ... 411

... 12.5 Beispiele ... 418



13 Sortierverfahren ... 431


... 13.1 Bubblesort ... 432

... 13.2 Selectionsort ... 434

... 13.3 Insertionsort ... 437

... 13.4 Shellsort ... 439

... 13.5 Quicksort ... 443

... 13.6 Heapsort ... 449

... 13.7 Leistungsanalyse ... 454

... 13.8 Vergleich und Bewertung ... 465

... 13.9 Grenzen der Optimierung von Sortierverfahren ... 471

... 13.10 Aufgaben ... 476



14 Datenstrukturen ... 477


... 14.1 Datensequenz (struct) 478

... 14.2 Datenalternative (union) 487

... 14.3 Optimierung von Datenstrukturen ... 494

... 14.4 Zeiger und Datenstrukturen ... 499

... 14.5 Dynamische Datenstrukturen ... 502

... 14.6 Verkettete Datenstrukturen (Listen) 508

... 14.7 Die Freispeicherverwaltung ... 512

... 14.8 Abstrakte Datentypen ... 515

... 14.9 Aufgaben ... 528



15 C-Referenz (Teil 2) 535


... 15.1 Einfache Strukturen ... 535

... 15.2 Zusammengesetzte Strukturen ... 538

... 15.3 Zugriff auf Strukturen ... 540

... 15.4 Unions ... 543

... 15.5 Datenstrukturen und Funktionen ... 545

... 15.6 Dynamische Datenstrukturen ... 547

... 15.7 Zeiger in Datenstrukturen ... 550

... 15.8 Typvereinbarungen ... 554

... 15.9 Bitfelder ... 555



16 Ausgewählte Datenstrukturen ... 559


... 16.1 Aufgabenstellung ... 559

... 16.2 Schnittstellenvereinbarung ... 561

... 16.3 Anwendungsprogramm ... 564

... 16.4 Listen ... 569

... 16.5 Bäume ... 584

... 16.6 Ausgeglichene Bäume ... 613

... 16.7 Hashtabellen ... 636

... 16.8 Vergleich und Bewertung ... 649

... 16.9 Aufgaben ... 655



17 Elemente der Graphentheorie ... 657


... 17.1 Grundbegriffe ... 659

... 17.2 Darstellung von Graphen durch Datenstrukturen ... 666

... 17.3 Ausgewählte graphentheoretische Probleme ... 671



18 C++-Referenz (Teil 1) 751


... 18.1 Schlüsselwörter ... 751

... 18.2 Operatoren ... 751

... 18.3 Kommentare ... 754

... 18.4 Datentypen, Datenstrukturen und Variablen ... 755

... 18.5 Funktionen und Operatoren ... 764



19 Objektorientierte Programmierung ... 777




20 Klassen in C++ 793


... 20.1 Aufbau von Klassen ... 793

... 20.2 Instantiierung von Klassen ... 813

... 20.3 Friends ... 820

... 20.4 Operatoren auf Klassen ... 825

... 20.5 Ein- und Ausgabe in C++ 829

... 20.6 Der this-Pointer ... 837

... 20.7 Beispiele ... 838

... 20.8 Aufgaben ... 864



21 Vererbung in C++ 871


... 21.1 Geschützte Member ... 877

... 21.2 Einfache Vererbung ... 880

... 21.3 Mehrfache Vererbung ... 881

... 21.4 Instantiierung abgeleiteter Klassen ... 881

... 21.5 Erweiterung abgeleiteter Klassen ... 884

... 21.6 Überladen von Funktionen der Basisklasse ... 886

... 21.7 Virtuelle Member-Funktionen ... 891

... 21.8 Rein virtuelle Member-Funktionen ... 894

... 21.9 Statische Member ... 895

... 21.10 Beispiele ... 902

... 21.11 Aufgaben ... 951



22 C++-Referenz (Teil 2) 957


... 22.1 Klassen und Instanzen ... 957

... 22.2 Member ... 958

... 22.3 Zugriff auf Member ... 966

... 22.4 Vererbung ... 976

... 22.5 Zugriffsschutz und Vererbung ... 991

... 22.6 Der Lebenszyklus von Objekten ... 999

... 22.7 Pointer to Member ... 1021

... 22.8 Generische Klassen (Templates) 1025

... 22.9 Ausnahmefallbehandlung ... 1031

... Anhang



A Buch-CD




B Lösungen


... Kapitel 1 1059

... Kapitel 3 1079

... Kapitel 4 1097

... Kapitel 5 1129

... Kapitel 6 1143

... Kapitel 7 1169

... Kapitel 8 1219

... Kapitel 10 1227

... Kapitel 11 1247

... Kapitel 13 1269

... Kapitel 14 1275

... Kapitel 16 1309

... Kapitel 20 1319

... Kapitel 21 1345



... Index ... 1349

Erscheint lt. Verlag 1.10.2008
Reihe/Serie Galileo Computing
Sprache deutsch
Maße 168 x 240 mm
Gewicht 2086 g
Themenwelt Informatik Programmiersprachen / -werkzeuge C / C++
Schlagworte Algorithmen • C • C++ • C (Programmiersprache) • C++ (Programmiersprache); Einführung • Datenstrukturen • Hardcover, Softcover / Informatik, EDV/Programmiersprachen • HC/Informatik, EDV/Programmiersprachen • Objektorientierung
ISBN-10 3-89842-839-7 / 3898428397
ISBN-13 978-3-89842-839-2 / 9783898428392
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich