
C/C++
Von den Grundlagen zur professionellen Programmierung
Galileo Computing (Publisher)
2nd Edition
Published on 28. October 2002
Book
Mixed media product
1368 pages
978-3-89842-273-4 (ISBN)
Article exhausted; check for reprint
Description
Dies ist die erweiterte und vollständig durchgesehene 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. Die beiliegende CD-ROM enthält ein C/C++-Praktikum zum sofortigem Einstieg am Computer. Nach der Lektüre sind Sie Profi: fähig, anspruchsvolle Anwendungen zu planen, zu entwerfen und mit hoher Qualität zu entwickeln.
Galileo Press heißt jetzt Rheinwerk Verlag.
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. Die beiliegende CD-ROM enthält ein C/C++-Praktikum zum sofortigem Einstieg am Computer. Nach der Lektüre sind Sie Profi: fähig, anspruchsvolle Anwendungen zu planen, zu entwerfen und mit hoher Qualität zu entwickeln.
Galileo Press heißt jetzt Rheinwerk Verlag.
More details
Series
Language
German
Place of publication
Bonn
Germany
Publishing group
Rheinwerk Verlag
Edition type
Enlarged edition
Dimensions
Height: 240 mm
Width: 168 mm
ISBN-13
978-3-89842-273-4 (9783898422734)
Schweitzer Classification
Other editions
New editions

Book
10/2014
5th Edition
Galileo Computing
€39.90
Article exhausted; check different version

Book
01/2005
3rd Edition
Rheinwerk
€39.90
Article exhausted; check for reprint

Book
09/2002
1st Edition
Rheinwerk
€25.00
Article exhausted; check for reprint
Previous edition

Book
02/2000
1st 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