
C/C++
Von den Grundlagen zur professionellen Programmierung
Rheinwerk (Publisher)
4th Edition
Published on 28. September 2008
Book
Mixed media product
1344 pages
978-3-89842-839-2 (ISBN)
Article exhausted; check for reprint
Description
Dies ist die 4., überarbeitete Neuauflage unseres C/C++-Standardwerkes.
Der erste Teil des Buches führt Sie anfängergerecht in die Grundlagen von C ein: Er bietet zahlreiche Beispielprojekte, Merksätze und Übungen am Ende eines jeden Kapitels. Von da aus geht es weiter zur objektorientierten Programmierung mit C++: Auf der Grundlage der erworbenen Kenntnisse in C wird der Leser zügig an komplexe Beispielprojekte in C++ herangeführt. Das Buch ist konzipiert als umfassender Begleiter: Es dient als Lehr- und Arbeitsbuch, ist Nachschlagewerk in der Praxis und gibt fertige, sofort einsetzbare Lösungen an die Hand. Nach der Lektüre sind Sie Profi: fähig, anspruchsvolle Anwendungen zu planen, zu entwerfen und mit hoher Qualität zu entwickeln.
Der erste Teil des Buches führt Sie anfängergerecht in die Grundlagen von C ein: Er bietet zahlreiche Beispielprojekte, Merksätze und Übungen am Ende eines jeden Kapitels. Von da aus geht es weiter zur objektorientierten Programmierung mit C++: Auf der Grundlage der erworbenen Kenntnisse in C wird der Leser zügig an komplexe Beispielprojekte in C++ herangeführt. Das Buch ist konzipiert als umfassender Begleiter: Es dient als Lehr- und Arbeitsbuch, ist Nachschlagewerk in der Praxis und gibt fertige, sofort einsetzbare Lösungen an die Hand. Nach der Lektüre sind Sie Profi: fähig, anspruchsvolle Anwendungen zu planen, zu entwerfen und mit hoher Qualität zu entwickeln.
Reviews / Votes
Es gibt eine Handvoll guter Bücher zu C/C++ und das gehört meines Erachtens dazu. Unter Informatikern wird dieses Buch nicht umsonst die Bibel der C- und C++-Entwicklung genannt. Es ist ein wunderbares Nachschlagewerk, welches solides Basiswissen zu C/C++ schafft und darüber hinaus einige Grundlagen der Informatik vermittelt.More details
Series
Language
German
Place of publication
Bonn
Germany
Edition type
Enlarged edition
Dimensions
Height: 24 cm
Width: 16.8 cm
ISBN-13
978-3-89842-839-2 (9783898428392)
Schweitzer Classification
Other editions
New editions

Book
10/2014
5th Edition
Galileo Computing
€39.90
Article exhausted; check different version
Software
04/2014
1st Edition
Galileo Design
€49.90
The article will not be published
Previous edition

Book
01/2005
3rd Edition
Rheinwerk
€39.90
Article exhausted; check for reprint
Content
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
. 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