Softwaretechnik in C und C++

Größe: px
Ab Seite anzeigen:

Download "Softwaretechnik in C und C++"

Transkript

1 Rolf Isernhagen Hartmut Helmke Softwaretechnik in C und C++ Das Kompendium Modulare, objektorientierte und generische Programmierung ISO-C90, ISO-C99, ISO-C++98, MS-C++.NET 4., vollständig überarbeitete Auflage HANSER

2 Inhaltsverzeichnis Vorwort zur 4. Auflage Vorwort zur 1. Auflage Hinweise für den Leser Inhaltsübersicht XXI XXIII XXV XXVII I C90, C99, Better-C und Modulare Softwareentwicklung 1 1 C90, C99 und Better-C Einführung Verschiedene Standards und Dialekte Clean-C und Better-C Beispielprogramme Aufbau der Sprache Lexikalische und syntaktische Struktur Formale Beschreibung (Syntaxnotation) Lexikalische Elemente (Symbole, Token) Trennzeichen (White Spaces) und Kommentare Unterschiede zwischen C99, C90 und C Daten 1, Operatoren, Ausdrücke, Anweisungen Vordefinierte Datentypen Operatoren für Elementare Datentypen Ausdrücke Prioritäten von Operatoren Explizite und implizite Typkonvertierungen Arbeiten mit Zahlen Arbeiten mit Zeichen Arbeiten mit Booleschen Ausdrücken Aufzählungstypen Ausdrücke als Anweisungen, Mehrfachzuweisungen 38

3 VIII Inhaltsverzeichnis Bedingte Ausdrücke und bedingte Anweisungen Unterschiede zwischen C99, C90 und C Übungen Steueranweisungen Übersicht Verbundanweisung (compound-statement) Verzweigungen Wiederholungen Marken und Sprünge Zusammenfassung Unterschiede zwischen C99, C90 und C Übungen Funktionen Grundlagen Definition und Deklaration von Funktionen Rekursive Algorithmen und Funktionen /nime-funktionen Variable Anzahl von Parametern C-Bibliotheksfunktionen Unterschiede zwischen C99, C90 und C Übungen Benutzerdefinierte Datentypen Zeiger, Adressen, Vektoren Strings (Zeichenketten) Mehrdimensionale Vektoren Strukturen Vereinigungen (Unionen) Verwendung des Attributs const Parameter- und Rückgabetypen Zeiger auf Funktionen Zeiger und Zeigerkonvertierungen Unterschiede zwischen C99, C90 und C Übungen Werte- und Zeigersemantik Prinzip der Speicherverwaltung Zeigersemantik beim Arbeiten mit Vektoren Werte- und Zeigersemantik bei Strukturen Werte- und Zeigersemantik bei der Funktionsrückgabe Dynamische Zeichenketten (Strings) Komplexe Deklarationen Unterschiede zwischen C99, C90 und C Übungen Eingabe und Ausgabe von Daten Überblick Arbeiten mit den Standardgeräten 119

4 Inhaltsverzeichnis IX Arbeiten mit Textdateien Datenformatierung Dateien mit Blockstruktur Strings als Medium für formatierte Ein- und Ausgabe Anzeige und Abfrage von EA-Zuständen Weitere Funktionen Unterschiede zwischen C99, C90 und C Übungen.Ss Präprozessor Einfügen von Dateien Ersetzen von Textstellen Bedingte Einfügung, bedingte Übersetzung Definition von Makros Vordefinierte Namen Sonstiges Zusammenfassung und Bewertung Unterschiede zwischen C99, C90 und C Übungen Programmstruktur und Speicherklassen Dateien, Geltungsbereiche, Lebensdauer Deklarationen und Definitionen Geltungsbereich von Bezeichnern Lebensdauer von Variablenwerten Zusammenfassung und Ergänzungen Module: Definitions- und Implementationsdateien Allgemeiner Aufbau von C-Programmen Unterschiede zwischen C99, C90 und C Übungen Fehler- und Ausnahmebehandlung Verwendung des Makros assert Fehler-Return-Codes bei Funktionen Modulbehaftete globale Statusvariable C++-Exception-Handling-Konzept Übungen C-Standardbibliothek Kurzübersicht über die Gesamtbibliothek Fehlerdiagnostik: <assert.h> Komplexe Arithmetik: <complex.h> Zeichenoperationen: <ctype.h> Fehlererkennung: <errno.h> Gleitkomma-Arithmetik: <fenv.h> Grenzwerte für Gleitkommatypen: <float.h> Definition von Wortsymbolen: <inttypes.h> Definition von Wortsymbolen: <iso646.h>.. 173

5 X Inhaltsverzeichnis 2.10 Grenzwerte für Ganzzahl-Typen: <limits.h> Lokale (nationale) Definitionen: <locale.h> Mathematische Funktionen: <math.h> Globale Sprünge: <setjmp.h> Ausnahmebehandlung: <signal.h> Variable Parameterlisten: <stdarg.h> Boolesche Arithmetik: <stdbool.h> Allgemeine Definitionen: <stddef.h> Erweiterte Integer-Typen: <stdint.h> Ein- und Ausgabe: <stdio.h> Hilfsfunktionen: <stdlib.h> String-Operationen: <string.h> Typ-generische Makros: <tgmath.h> Datum und Zeit: <time.h> wide-char und Multibyte-Zeichen: <wchar.h> Klassifizierung von wctype-zeichen: <wctype.h> Modulare Programmierung in C und in Better-C Module und Modulschnittstellen Softwareentwurf und Modularisierung Geheimnisprinzip, Datenkapselung, Abstrakte Datentypen Realisierung von Abstrakten Datentypen in C Realisierung von generischen Modulen in C Fallstudie 1: Komplexe Arithmetik Spezifikation Implementierung Anwendung Fallstudie 2: Strings Spezifikation Implementierung Anwendung Fallstudie 3: Set (Menge) Allgemeine Spezifikation Modul Set, Version 0: Kleiner Wertebereich Modul Set, Version 1: Vergrößerung des Wertebereichs Modul Set, Version 2: Einstellbarer Wertebereich Modul Set, Version 3: Alternative Realisierung Modul Set, Version 4: Ein generisches Modul Fallstudie 4: Generische Sortierte Liste Spezifikation Implementierung Anwendung Anpassung an Anwendungen Better-C: Namensbereiche Grundlagen: Definition und Benutzung 235

6 Inhaltsverzeichnis XI Erweiterung von Namensbereichen Alias (Synonym) für Namensbereiche Using-Direktive und Using-Deklaration Anonyme Namensbereiche Anwendung von Namensbereichen Portierung von C-Modulen Übungen * 244 II Algorithmen, Datenstrukturen, ADTs, Container Sortieren, Suchen, Rekursion und Zeitkomplexität Zeitkomplexität Analyse rekursiver Algorithmen Einfache Sortieralgorithmen Schnelle Sortieralgorithmen Laufzeitmessungen an Sortieralgorithmen Lineares Suchen Binäres Suchen Die Macht der Zeitkomplexität Dynamische Datenstrukturen Lineare Listen, Stapel und Schlangen Zeigernotation und Heapverwaltung Lineare einfach gekettete Listen Lineare doppelt gekettete Listen Stapelspeicher Warteschlange ADT List (Unsortierte Liste) Prioritätswarteschlange Übungen ADT SList (Sortierte Liste) Binäre Wilde Bäume Grundlagen " Traversieren Einfügen Suchen Löschen Übungen ADT Tree (Binärer Suchbaum) Fallstudie Querverweis-Listengenerator Binäre Ausgeglichene Bäume Definition der Ausgeglichenheit und Konzept Einfügen Löschen 324

7 XII Inhaltsverzeichnis ADT Avl (Ausgeglichener Binärer Suchbaum) Vielweg-Bäume (B-Bäume) : Einführung und Konzept Datenstrukturen Traversieren Einfügen Löschen Demoprogramm Übungen Heap-Strukturen Hashverfahren Allgemeines Statische Hashverfahren Halbdynamische Hashverfahren Dynamische Hashverfahren Zusammenfassung Container-Strukturen Container-Strukturen, Überblick Realisierung von Container-Strukturen Stack, Queue und Priorityqueue Set und Multiset Map, Multimap und Vector Anwendungsbeispiele Test- und Demoprogramm Anwendungsbeispiel Textanalyse Anwendungsbeispiel Anagramme Übungen Automaten in der Softwaretechnik (ausgelagert auf die CD-ROM) 963 III Die Sprache C++ und ihre Softwaretechniken Klassen als Abstrakte Datentypen Von^C nach C Einführung, Klassen als Abstrakte Datentypen Von der Struktur zur Klasse Grundlagen Konstruktoren und Destruktoren Verschiedene Arten von Konstruktoren Implizite Erzeugung von Konstruktoren Die Bedeutung des Kopierkonstruktors Die Bedeutung von Umwandlungskonstruktoren Destruktoren, implizite Erzeugung von Destruktoren Der Zuweisungsoperator 412

8 Inhaltsverzeichnis XIII Implizite Erzeugung Implementierung - das Prinzip Zugriffsrechte Minimale Standardschnittstelle und Nice Class Konstante Methoden konstante Objekte UML-Klassendiagramme: Modelle der Programmstruktur Modellierung von Klassen mit UML Modellierung von Beziehungen zwischen Klassen Mitglieder und Freunde FWend-Beziehungen Beispiel: i^erad-klassen Beispiel: Komplexe Arithmetik, Version Überladen von Operatoren Beispiel: Komplexe Arithmetik, Version Hinweise zum Überladen von Operatoren Überladbare und nicht überladbare Operatoren Überladen von Konvertierungsoperatoren Dynamische verwaltete Daten in Klassen Beispiel: Komplexe Arithmetik, Version Implizite Verwendung des Kopierkonstruktors Überladen des Zuweisungsoperators Effizienzbetrachtungen: Laufzeiteffizienz Grundlegende Überlegungen Beispiel: Komplexe Arithmetik, Version Statische Elemente in einer Klasse Schachtelung von Klassen? Funktionsobjekte Zusammenfassung: Hinweise und Regeln Übungen Objektorientierte Programmierung Vererbung: Erweiterung von Klassen Grundlagen Konstruktoren, Destruktor und Zuweisungsoperator ^ Typkompatibilität in Klassenhierarchien Virtuelle Funktionen Öffentliches und Privates Erben Privates Erben und Benutzen Rein Virtuelle Funktionen und Abstrakte Klassen UML-Klassendiagramme: Vererbungshierarchien Übungen Polymorphie: Dynamisches Binden Dynamischer Typ, dynamisches Binden Heterogene Datenstrukturen Virtuelle Destruktoren 481

9 XIV Inhaltsverzeichnis Ein Klassensystem für grafische Objekte, Vers Objektschachtelung: Grafische Objekte, Vers Zwei Aspekte der Polymorphie: heterogen und genetisch Polymorphe Container-Strukturen Übungen Die richtige Anwendung der Vererbung Verschiedene Sichten und Probleme Schnittstellen-Klassen Abstrakte und nicht abstrakte Basisklassen Zuweisungsoperatoren in Klassen mit polymorphen Zeigern Übungen Mehrfachvererbung Grundlagen Verwendung nicht virtueller Basisklassen Verwendung virtueller Basisklassen Virtuelle Methoden in virtuellen Basisklassen Fallstudie Querverweis-Listengenerator Übungen Typkonvertierung, Laufzeit-Typinformation Die Grundidee Syntax und Semantik der Sprachkonstrukte Zusammenfassung Ausnahmebehandlung (Exception-Handling) Grundlagen Syntax und Semantik der Sprachkonstrukte Zusammenfassung und Empfehlungen Übungen Besondere Programmiertechniken Referenzzählung (Reference-Counting) Up-Calls Botschaften und Botschaftsinterpreter Generische Programmierung Klassen-Templates: Generische Strukturen *1 Grundlagen UML-Klassendiagramme: Klassenschablonen Eine generische Container-Bibliothek Spezialisierung von Templates Eine spezialisierte Container-Bibliothek Exception Handling am Beispiel eines Stack-Templates Übungen Funktions- und Element-Templates Funktions-Templates Element-Templates Besondere Programmiertechniken 604

10 Inhaltsverzeichnis XV Smart Pointer Iteratoren Generische Algorithmen Entwicklung einer kleinen Container-Bibliothek Konzept und Überblick Die Klassen List, SList und Tree Die Containerklassen Stack, Queue und Prio Set und Multiset Die Containerklassen Map, Multimap und Vector Test- und Demoprogramm für die Containerklassen Template-Metaprogrammierung Compile-Zeit-Berechnungen Laufzeit- und Compile-Zeit-Polymorphismus C++-Standardbibliothek Übersicht Allgemeine Dienste Vergleichsoperatoren Paare Auto-Zeiger Übungen Strings Konzept und Übersicht Funktionalität Ein- und Ausgabe (EA) Vorteile des neuen EA-Konzeptes EA im Standardformat mit Standardgeräten Struktur & Funktionalität der Stream-IO-Bibliothek Formatierung EA-Funktionen Arbeiten mit Dateien Strings als Ein- und Ausgabemedium Anzeige & Abfrage von Zuständen, Fehlerbehandlung Eigene Definitionen, weitere Funktionen Container Das Konzept der Standard Template Library (STL) Einführung Gemeinsame Definitionen Container für Sequenzen Containeradapter für Sequenzen Container für Assoziationen Die Containerklasse bitset Übungen Iteratoren Operationen und Klassifizierung 738

11 XVI Inhaltsverzeichnis Iteratoren als Container-Schnittstellen Reverse-Iteratoren Insert-Iteratoren Stream-Iteratoren Selbst definierte Iteratoren (Iterator-Adapter) Funktionsobjekte Verwendung von Funktionsobjekten Funktionsobjekte der Standardbibliothek Funktionsadapter der Standardbibliothek Algorithmen: globale generische Funktionen Nicht modifizierende sequenzielle Operationen Modifizierende sequenzielle Operationen Sortieren, Suchen und verwandte Operationen Mengenoperationen Heap-bezogene Operationen Minimax bestimmen und lexikografische Vergleiche Permutieren Anwendungsbeispiel Textanalyse Übungen Weitere Dienstleistungen Ausnahmebehandlung Grenzwerte der Implementierung Speichermodelle Internationalisierung Numerik 802 IV Die Sprache C++.NET und ihre Bibliothek C++.NET: Verwalteter Code, Objektmodell und Bibliothek Von C++98 nach C++.NET - ein Überblick Das Common Language Runtime-System Managed Code - Arbeiten mit verwalteten Objekten NET-Datentypen und.net Framework Library Klassen im Namensraum System Die Klasse Object und das.net-programmiermodell Die Klasse Console - Arbeiten mit der Konsole-E/A Arbeiten mit Dateien Die Klasse String Container-Klassen in System: :Collections Übungen Verwaltete Objekte unter.net Das Schlüsselwort _gc Das Schlüsselwort nogc Das Schlüsselwort value 837

12 Inhaltsverzeichnis XVII Das Schlüsselwort box, Boxing und Unboxing Das Schlüsselwort pin Vererbung und Typkontrolle unter.net Das Schlüsselwort abstract Das Schlüsselwort interface Das Schlüsselwort _sealed Das Schlüsselwort typeof Das Schlüsselwort try_cast Ereignisbehandlung unter.net Das Schlüsselwort delegate Das Schlüsselwort event Anwendung für Delegates Anwendung für Events Weitere.NET-Schlüsselwörter Das Schlüsselwort property Das Schlüsselwort identifier NET-Datentypen Einfache.NET-Datentypen Verwaltete Arrays Operatoren überladen unter.net Übungen Programmieren mit Managed Extensions Fallstudie: Ein Botschaftsinterpreter Mischen von verwaltetem und nicht verwaltetem Code Speicherverwaltung Destruktor und verwaltete Objekte Beispiel Verwaltete Zeiger in nicht verwalteten Typen Ausnahmebehandlung Die STL in Zusammenhang mit Managed Code Details der C++.NET-Garbage Collection Portabler Code trotz Managed Extensions? Grundsatz-Überlegungen Portabilität der neuen Schlüsselworte Objekte des Namensraums System Weitere Aspekte der Portabiliät Übungen 928 Literaturverzeichnis 929 Stichwortverzeichnis 933 Die folgenden Teile befinden sich auf der CD-ROM

13 XVIII Inhaltsverzeichnis Texte auf der CD-ROM (Buch-CD.ps und Buch-CD.pdf) 947 C/C++-Textverzeichnis 949 Abbildungsverzeichnis 957 Tabellenverzeichnis Automaten in der Softwaretechnik Automaten und Sprachen Endliche Automaten und Reguläre Sprachen Lexikalische Analyse, Scanner Scanner für Zahlen Scanner für Kommentare Ein Scanner für die kleine Sprache ML Kellerautomaten und Kontextfreie Sprachen Syntaktische Analyse, Parser EBNF-Notation und Syntaxdiagramme Parser Die Sprachen ML1 und ML2 und ihre Parser 986 Anhänge: Lösungen zu den Übungen 1 A Lösungen zu Kapitel 1 3 A.l Lösungen zu Abschnitt A.2 Lösungen zu Abschnitt A.3 Lösungen zu Abschnitt A.4 Lösungen zu Abschnitt A.5 Lösungen zu Abschnitt A.6 Lösungen zu Abschnitt A.7 Lösungen zu Abschnitt A.8 Lösungen zu Abschnitt A.9 Lösungen zu Abschnitt B Lösungen zu Kapitel 3 57 C Lösungen zu Kapitel 5 77 C.l Lösungen zu Abschnitt C.2 Lösungen zu Abschnitt C.3 Lösungen zu Abschnitt D Lösungen zu Kapitel 6 97 E Lösungen zu Kapitel 8 105

14 Inhaltsverzeichnis. XIX F Lösungen zu Kapitel F.l Lösungen zu Abschnitt F.2 Lösungen zu Abschnitt F.3 Lösungen zu Abschnitt F.4 Lösungen zu Abschnitt F.5 Lösungen zu Abschnitt G Lösungen zu Kapitel H Lösungen zu Kapitel H.l Lösungen zu Abschnitt H.2 Lösungen zu Abschnitt H.3 Lösungen zu Abschnitt I Lösungen zu Kapitel J Lösungen zu Kapitel

Inhaltsverzeichnis. Vorwort

Inhaltsverzeichnis. Vorwort Inhaltsverzeichnis Vorwort XI 1 C/C++-Grundlagen 1 1.1 Einführung................................ 1 1.1.1 Entwicklungsgeschichte: Von K&R-C nach C++........ 1 1.1.2 Beispielprogramme.......................

Mehr

Softwaretechnik in C und C++

Softwaretechnik in C und C++ Softwaretechnik in C und C++ Modulare, objektorientierte und generische Programmierung von Rolf Isernhagen 1. Auflage Softwaretechnik in C und C++ Isernhagen schnell und portofrei erhältlich bei beck-shop.de

Mehr

Inhaltsverzeichnis. I C90, C99, Better-C und Modulare Softwareentwicklung 1. Vorwort zur 1. Auflage. Hinweise für den Leser.

Inhaltsverzeichnis. I C90, C99, Better-C und Modulare Softwareentwicklung 1. Vorwort zur 1. Auflage. Hinweise für den Leser. Inhaltsverzeichnis Vorwort zur 4. Auflage Vorwort zur 1. Auflage Hinweise für den Leser Inhaltsübersicht XXI XXIII XXV XXVII I C90, C99, Better-C und Modulare Softwareentwicklung 1 1 C90, C99 und Better-C

Mehr

Die С ++-Programmiersprache

Die С ++-Programmiersprache Bjarne Stroustrup Die С ++-Programmiersprache 3., aktualisierte und erweiterte Auflage Deutsche Übersetzung von Nicolai Josuttis und Achim Lörke raddison-wesley An imprint of Addison Wesley Longman, Inc.

Mehr

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden ffl mitp Inhaltsverzeichnis Einleitung 19 1 Grundlagen 21 Entwicklung und Eigenschaften von C + + 22 Objektorientierte Programmierung

Mehr

Objektorientiertes Programmieren

Objektorientiertes Programmieren JL Ute Claussen Objektorientiertes Programmieren Mit Beispielen und Übungen in C++ Zweite, überarbeitete und erweiterte Auflage Mit 24 Abbildungen Springer Inhaltsverzeichnis 1 Einleitung 1 1.1 Was ist

Mehr

С als erste Programmiersprache

С als erste Programmiersprache Joachim Goll Ulrich Bröckl Manfred Dausmann С als erste Programmiersprache Vom Einsteiger zum Profi 4., überarbeitete und erweiterte Auflage Teubner B.G.Teubner Stuttgart Leipzig Wiesbaden 1 2 3 4 5 GRUNDBEGRIFFE

Mehr

Programmierung in C/C++

Programmierung in C/C++ Programmierung in C/C++ Mit einer grundlegenden Einführung in die Objektorientierung Univ.-Prof. Hon.-Prof. Dr. Dieter Roller Mit 134 Bildern Kontakt & Studium Band 682 Herausgeber: Prof. Dr. Birgit Baum

Mehr

... Vorwort Einstieg in die Programmierung Ablaufsteuerung... 71

... Vorwort Einstieg in die Programmierung Ablaufsteuerung... 71 ... Vorwort... 13 1... Einstieg in die Programmierung... 15 1.1... Programmieren... 15 1.1.1... Start eines Programms... 15 1.1.2... Eintippen, übersetzen, ausführen... 16 1.1.3... Der Algorithmus... 18

Mehr

Inhaltsverzeichnis 1 Der objektorientierte Ansatz 2 Elementare Objekte und Ausdrücke

Inhaltsverzeichnis 1 Der objektorientierte Ansatz 2 Elementare Objekte und Ausdrücke Inhaltsverzeichnis 1 Der objektorientierte Ansatz... 1 1.1 Ein einführendes Beispiel...2 1.1.1 Aktive Objekte...4 1.1.2 Klassifikation...4 1.1.3 Datenkapselung...6 1.2 OOP im Überblick...6 1.3 Programmaufbau...7

Mehr

Effektiv Programmieren in С und C++

Effektiv Programmieren in С und C++ Dietmar Herrmann Effektiv Programmieren in С und C++ Eine Einführung mit Beispielen aus Mathematik, Naturwissenschaft und Technik 3., vollständig überarbeitete und erweiterte Auflage 3 vieweg flffm \;i

Mehr

Kapitel 2 Elementare Datentypen, Konstanten und Variablen Elementare Datentypen

Kapitel 2 Elementare Datentypen, Konstanten und Variablen Elementare Datentypen Inhaltsverzeichnis Einleitung Kapitel 1 Grundlagen Entwicklung und Eigenschaften von C++ Objektorientierte Programmierung Erstellen eines C++- Programms Ein erstes C++-Programm Struktur einfacher C++-Programme

Mehr

Manfred Dausmann Ulrich BröckI Dominik Schoop Joachim Goll C als erste Programmiersprache

Manfred Dausmann Ulrich BröckI Dominik Schoop Joachim Goll C als erste Programmiersprache Manfred Dausmann Ulrich BröckI Dominik Schoop Joachim Goll C als erste Programmiersprache Vom Einsteiger zum Fortgeschrittenen 7., überarbeitete und erweiterte Auflage Mit 35 Abbildungen STUDIUM VIEWEG+

Mehr

Arnold Willemer C++ Der Einstieg. WlLEY

Arnold Willemer C++ Der Einstieg. WlLEY Arnold Willemer C++ Der Einstieg WlLEY altsverzeichnis Vorwort 13 1 Einstieg in die Programmierung 15 1.1 Programmieren 15 1.1.1 Start eines Programms 16 1.1.2 Eintippen, übersetzen, ausführen 17 1.1.3

Mehr

Grundkurs Software- Entwicklung mit C++

Grundkurs Software- Entwicklung mit C++ Dietrich May Grundkurs Software- Entwicklung mit C++ Praxisorientierte Einführung mit Beispielen und Aufgaben- Exzellente Didaktik und Übersicht Mit 30 Abbildungen 2., überarbeitete und erweiterte Auflage

Mehr

Arnold Willemer. Einstieg in C++ Galileo Press

Arnold Willemer. Einstieg in C++ Galileo Press Arnold Willemer Einstieg in C++ Galileo Press Vorwort 13 1.1 Programmieren 17 1.1.1 Start eines Programms 17 1.1.2 Eintippen, übersetzen, ausführen 18 1.1.3 Der Algorithmus 20 1.1.4 Die Sprache C++ 21

Mehr

Objektorientiertes Programmieren in C++

Objektorientiertes Programmieren in C++ Nicolai Josuttis Objektorientiertes Programmieren in C++ Von der Klasse zur Klassenbibliothek D-64289 Darmstadt ADDISON-WESLEY PUBLISHING COMPANY Bonn Paris Reading, Massachusetts Menlo Park, California

Mehr

Arnold Willemer. Einstieg in C++ Galileo Press

Arnold Willemer. Einstieg in C++ Galileo Press Arnold Willemer Einstieg in C++ Galileo Press Vorwort 13 1.1 Programmieren 15 1.1.1 Start eines Programms 15 1.1.2 Eintippen, übersetzen, ausführen 16 1.1.3 Der Algorithmus 18 1.1.4 Die Sprache C++ 19

Mehr

Programmieren lernen mit C

Programmieren lernen mit C Programmieren lernen mit C Bearbeitet von Karlheinz Zeiner 4., aktualisierte Auflage 2000. Buch. XIV, 361 S. Hardcover ISBN 978 3 446 21596 2 Format (B x L): 16,9 x 24,1 cm Gewicht: 730 g Weitere Fachgebiete

Mehr

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15 Vorwort... 15 1 Einstieg in die Welt von C 17 1.1 Die Sprache C... 17 1.2 Die C-Standardbibliothek... 18 1.3 Die nötigen Werkzeuge für C... 21 1.4 Übersetzen mit der Entwicklungsumgebung... 23 1.5 Übersetzen

Mehr

Ulla Kirch Peter Prinz C+ + Lernen und professionell anwenden. mitp

Ulla Kirch Peter Prinz C+ + Lernen und professionell anwenden. mitp Ulla Kirch Peter Prinz C+ + Lernen und professionell anwenden mitp Inhaltsverzeichnis Einleitung 19 Grundlagen 21 Entwicklung und Eigenschaften von C++ 22 Objektorientierte Programmierung 24 Erstellen

Mehr

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2 iii Inhaltsverzeichnis Kurseinheit 1 1 Von der Aufgabenstellung zum Programm... 1 1.1 Motivation... 1 1.2 Softwareentwicklung... 2 1.3 EXKURS: Unified Modeling Language (UML)... 4 2 Anforderungsanalyse...

Mehr

C für Java-Programmierer

C für Java-Programmierer Carsten Vogt C für Java-Programmierer ISBN-10: 3-446-40797-9 ISBN-13: 978-3-446-40797-8 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-40797-8 sowie im

Mehr

Sprechen Sie Java? Hanspeter Mössenböck. Tm\ dpunkt.verlag. Eine Einführung in das systematische Programmieren

Sprechen Sie Java? Hanspeter Mössenböck. Tm\ dpunkt.verlag. Eine Einführung in das systematische Programmieren Hanspeter Mössenböck Sprechen Sie Java? Eine Einführung in das systematische Programmieren 3., überarbeitete und erweiterte Auflage Tm\ dpunkt.verlag 1 Grundlagen 1 1.1 Daten und Befehle 2 1.2 Algorithmen

Mehr

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4 Inhaltsverzeichnis TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA... 1 1 GRUNDLAGEN DER PROGRAMMIERUNG... 4 1.1 Das erste Java-Programm... 4 1.2 Programme und ihre Abläufe... 6 1.3 Entwurf mit Nassi-Shneiderman-Diagrammen...

Mehr

Objektorientiert in C++

Objektorientiert in C++ Dirk Louis Objektorientiert in C++ Einstieg und professioneller Einsatz intwickier.pres: Vorwort 11 1 Schnellkurs C++ 13 1.1 ANSI-C++ und die Compiler 13 Compiler und Programmerstellung 13 ANSI und die

Mehr

Inhaltsverzeichnis. Einführende Bemerkungen 11. Das Fach Informatik 11 Zielsetzung der Vorlesung Grundbegriffe

Inhaltsverzeichnis. Einführende Bemerkungen 11. Das Fach Informatik 11 Zielsetzung der Vorlesung Grundbegriffe Inhaltsverzeichnis Einführende Bemerkungen 11 Das Fach Informatik 11 Zielsetzung der Vorlesung 12 1. Grundbegriffe 1 3 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Information und Nachricht 1.1.1 Information 1.1.2 Nachricht

Mehr

1 Einige Grundbegriffe Einführung in die Programmierung Ausgewählte Sprachelemente von C Arithmetik...

1 Einige Grundbegriffe Einführung in die Programmierung Ausgewählte Sprachelemente von C Arithmetik... Auf einen Blick Auf einen Blick 1 Einige Grundbegriffe... 21 2 Einführung in die Programmierung... 35 3 Ausgewählte Sprachelemente von C... 45 4 Arithmetik... 83 5 Aussagenlogik... 107 6 Elementare Datentypen

Mehr

Inhaltsverzeichnis. Vorwort.11

Inhaltsverzeichnis. Vorwort.11 Inhaltsverzeichnis Vorwort.11 Kapitel 1 Einführung in die C-Programmierung 17 1.1 Ein erstes C-Programm 17 1.1.1 Analyse des Zinseszins-Programms 17 1.2 Compilieren und Ausführen eines Programms 24 1.3

Mehr

Informatik I Programmieren in C

Informatik I Programmieren in C Informatik I Programmieren in C Zusammenfassung des Semesters Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen

Mehr

Inhaltsverzeichnis. 1 Grundlagen 1. 2 Einfache Programme 21

Inhaltsverzeichnis. 1 Grundlagen 1. 2 Einfache Programme 21 xi 1 Grundlagen 1 1.1 Daten und Befehle......................................... 2 1.2 Algorithmen............................................. 4 1.3 Variablen................................................

Mehr

Werner Achte rt DATA BECKER

Werner Achte rt DATA BECKER Werner Achte rt. DATA BECKER Inhaltsverzeichnis 1. Einführung 21 1.1 Entwurf von Anwendungssystemen 23 1.2 Entwicklung eines Programms 25 1.3 Objektorientierte Programmierung 29 1.4 Darstellung objektorientierter

Mehr

Alexander Niemann. Das Einsteigerseminar" < Objektorientierte ^ Programmierung in Java. bhv. i.-

Alexander Niemann. Das Einsteigerseminar < Objektorientierte ^ Programmierung in Java. bhv. i.- Alexander Niemann Das Einsteigerseminar" < Objektorientierte ^ Programmierung in Java i.- bhv Vorwort 11 Einleitung 13 Lernen - Üben 13 Über dieses Buch 14 Teil \ LöRTEn ;...-.,-......Al f Java 19 Die

Mehr

Gliederung der Folien

Gliederung der Folien 1 Gliederung der Folien 1. Einführung 1.1. Gliederung 1.2. Literatur 1.3. Einstieg in Java 1.3.1. Geschichte von Java 1.3.2. Hello World 1.3.3. Übersetzen eines Java-Programms 1.4. Die Entwicklungsumgebung

Mehr

Einführung in die STL

Einführung in die STL Einführung in die STL Fimberger Lucia lfimberg@cosy.sbg.ac.at Nidetzky Marion mnidetzk@cosy.sbg.ac.at Was ist die STL? Abkürzung für Standard Template Library Eine generische Bibliothek Ist kaum objektorientiert,

Mehr

Objektorientierte Programmierung mit C++ SS 2007

Objektorientierte Programmierung mit C++ SS 2007 Objektorientierte Programmierung mit C++ SS 2007 Andreas F. Borchert Universität Ulm 5. Juni 2007 Polymorphismus #include Function.h class Function { public: virtual ~Function() {}; virtual std::string

Mehr

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung Berichte aus der Informatik Dieter Pawelczak Start in die C-Programmierung Shaker Verlag Aachen 2012 Inhaltsverzeichnis Inhaltsverzeichnis i 1 Einleitung 1 1.1 Umfeld und Aufbau des Buches 1 Die Programmiersprache

Mehr

C als erste Programmiersprache

C als erste Programmiersprache Manfred Dausmann, Ulrich Bröckl, Joachim Goll C als erste Programmiersprache Vom Einsteiger zum Profi 6., überarbeitete Auflage Teubner Inhaltsverzeichnis 1 Grundbegriffe der Programmierung 2 1.1 Das erste

Mehr

Softwaretechnik in C und C++ - Das Kompendium

Softwaretechnik in C und C++ - Das Kompendium Softwaretechnik in C und C++ - Das Kompendium Modulare, objektorientierte und generische Programmierung Bearbeitet von Rolf Isernhagen 3. Auflage 2001. Buch. XXVI, 994 S. Hardcover ISBN 978 3 446 21726

Mehr

Inhaltsverzeichnis. Teil 1 Grundlagen 21. Teil 2 Datenstrukturen 85

Inhaltsverzeichnis. Teil 1 Grundlagen 21. Teil 2 Datenstrukturen 85 Inhaltsverzeichnis Vorwort 13 Umfang 14 Einsatz als Unterrichtsmittel 14 Algorithmen mit Praxisbezug 15 Programmiersprache 16 Danksagung 17 Vorwort des Java-Beraters 18 Hinweise zu den Übungen 19 Teil

Mehr

Ralf Kirsch Uwe Schmitt. Programmieren inc. Eine mathematikorientierte Einführung. Mit 24 Abbildungen und 13 Tabellen. Springer

Ralf Kirsch Uwe Schmitt. Programmieren inc. Eine mathematikorientierte Einführung. Mit 24 Abbildungen und 13 Tabellen. Springer Ralf Kirsch Uwe Schmitt Programmieren inc Eine mathematikorientierte Einführung Mit 24 Abbildungen und 13 Tabellen Springer Inhaltsverzeichnis Eine Einleitung in Frage und Antwort V 1 Vorbereitungen 1

Mehr

Programmieren lernen mit Perl

Programmieren lernen mit Perl Xpert.press Programmieren lernen mit Perl Bearbeitet von Joachim Ziegler 1. Auflage 2002. Buch. XIV, 400 S. Hardcover ISBN 978 3 540 42685 1 Format (B x L): 15,5 x 23,5 cm Gewicht: 783 g Weitere Fachgebiete

Mehr

Informatik für Ingenieure

Informatik für Ingenieure Informatik für Ingenieure Grundlagen und Programmierung in С von Prof. Dr. Axel Böttcher und Prof. Dr. Franz Kneißl Fachhochschule Regensburg Oldenbourg Verlag München Wien Inhalt Vorwort 5 1 Grundbegriffe

Mehr

Objektorientierte Programmierung in Java

Objektorientierte Programmierung in Java Objektorientierte Programmierung in Java 1. Auflage Taschenbuch. Paperback ISBN 978 3 8266 7414 3 Weitere Fachgebiete > EDV, Informatik > Programmiersprachen: Methoden > Prozedurorientierte Programmierung

Mehr

Manfred Schüttengruber. Objektorientierte Programmierung mit Visual Basic 2005

Manfred Schüttengruber. Objektorientierte Programmierung mit Visual Basic 2005 Manfred Schüttengruber Objektorientierte Programmierung mit Visual Basic 2005 Inhaltsverzeichnis Vorwort 11 i Das.NET-Konzept 15 I.I Kapitelüberblick 15 i.2 Das.NET Framework 15 1.3 IL-Code und Plattformunabhängigkeit

Mehr

Polymorphismus 179. Function.h. #include <string>

Polymorphismus 179. Function.h. #include <string> Polymorphismus 179 #include Function.h class Function { public: virtual ~Function() {}; virtual std::string get_name() const = 0; virtual double execute(double x) const = 0; }; // class Function

Mehr

Liste MI / Liste I Programmieren in C++

Liste MI / Liste I Programmieren in C++ Liste MI / Liste I Programmieren in C++ Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Medieninformatik WS 2007/2008 Kapitel 1-4 1 Ziele Kennenlernen einer weiteren objektorientierten

Mehr

Das erwartet dich in diesem Buch 8. Kapitel 1 Aufbruch ins Programmierabenteuer 14

Das erwartet dich in diesem Buch 8. Kapitel 1 Aufbruch ins Programmierabenteuer 14 Inhaltsverzeichnis Das erwartet dich in diesem Buch 8 Kapitel 1 Aufbruch ins Programmierabenteuer 14 Das Schlimmste vorab: die binäre Logik 15 So hoch entwickelt und doch so primitiv: der Prozessor 17

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Dietmar Ratz Jens Scheffler Detlef Seese Grundkurs Programmieren

Mehr

Das Einsteigerseminar Objektorientierte Programmierung in Java

Das Einsteigerseminar Objektorientierte Programmierung in Java Alexander Niemann Das Einsteigerseminar Objektorientierte Programmierung in Java -H-H Inhalt Vorwort 13 Einleitung 15 1 Java 21 1.1 Die Geschichte von Java 22 1.2 Das Konzept 24 Klassisch - Compiler und

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung von Dietmar Ratz, Jens Scheffler, Detlef Seese 2. Auflage Hanser München 2004 Verlag C.H. Beck im Internet:

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Grundkurs Programmieren in Java Jens Scheffler, Dietmar Ratz, Jan Wiesenberger, Detlef Seese Band 1: Der Einstieg in Programmierung und Objektorientierung ISBN 3-446-40493-7 Inhaltsverzeichnis Weitere

Mehr

Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung

Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung Dietmar Ratz, Jens Scheffler, Detlef Seese, Jan Wiesenberger Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung ISBN-10: 3-446-41268-9 ISBN-13: 978-3-446-41268-2

Mehr

Inhaltsverzeichnis. Teil 1 Grundlagen 23

Inhaltsverzeichnis. Teil 1 Grundlagen 23 Inhaltsverzeichnis Vorwort 11 Umfang 12 Einsatz als Unterrichtsmittel 12 Algorithmen mit Praxisbezug 13 Programmiersprache 14 Danksagung 15 Vorwort des C++-Beraters 16 Hinweise zu den Übungen 21 Teil 1

Mehr

Robert Sedgewick. Algorithmen in Java. Teil 1-4 Grundlagen Datenstrukturen Sortieren Suchen. Java-Beratung durch Michael Schidlowsky

Robert Sedgewick. Algorithmen in Java. Teil 1-4 Grundlagen Datenstrukturen Sortieren Suchen. Java-Beratung durch Michael Schidlowsky Robert Sedgewick Algorithmen in Java Teil 1-4 Grundlagen Datenstrukturen Sortieren Suchen Java-Beratung durch Michael Schidlowsky 3., überarbeitete Auflage \ PEARSON ein Imprint von Pearson Education München

Mehr

Programmieren mit Java

Programmieren mit Java Reinhard Schiedermeier Programmieren mit Java 2., aktualisierte Auflage ein Imprint von Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam

Mehr

Programmieren in Lua

Programmieren in Lua Roberto lerusalimschy Programmieren in Lua 3. Auflage Open Source Press Inhaltsverzeichnis Vorwort 13 I Die Sprache 21 1 Einführung 23 1.1 Chunks 24 1.2 Einige lexikalische Konventionen 26 1.3 Globale

Mehr

Robert Sedgewick. Algorithmen in Java. »il 1-4 Grundlagen Datenstrykturen Sortleren Suchen. java-beratung durch Michael Schidlowsky

Robert Sedgewick. Algorithmen in Java. »il 1-4 Grundlagen Datenstrykturen Sortleren Suchen. java-beratung durch Michael Schidlowsky Robert Sedgewick Algorithmen in Java»il 1-4 Grundlagen Datenstrykturen Sortleren Suchen java-beratung durch Michael Schidlowsky 3., überarbeitete Auflage PEARSON ein Imprint von Pearson Education München

Mehr

Objektorientierung. Helmut Herold Michael Klar Susanne Klar ^-ADDISON-WESLEY. An imprint of Pearson Education

Objektorientierung. Helmut Herold Michael Klar Susanne Klar ^-ADDISON-WESLEY. An imprint of Pearson Education Helmut Herold Michael Klar Susanne Klar Objektorientierung ^-ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam

Mehr

Ulrich Kaiser Christoph Kecher C/C++ Von den Grundlagen zur professionellen Programmierung. в.. Galileo Computing

Ulrich Kaiser Christoph Kecher C/C++ Von den Grundlagen zur professionellen Programmierung. в.. Galileo Computing Ulrich Kaiser Christoph Kecher C/C++ Von den Grundlagen zur professionellen Programmierung в.. Galileo Computing Inhalt Vorwort 15 Danksagung 16 Vorwort zur zweiten Auflage 1 Einige Grundbegriffe 1.1 Algorithmus

Mehr

C - Grundlagen und Konzepte Modulare Programmierung und Bibliotheken

C - Grundlagen und Konzepte Modulare Programmierung und Bibliotheken C - Grundlagen und Konzepte Modulare Programmierung und Bibliotheken Stefan Grusche Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften

Mehr

Erste Schritte der Programmierung in C

Erste Schritte der Programmierung in C Erste Schritte der Programmierung in C C versus C++ Anatomie von C-Programmen für AVR- Mikrocontroller Unterschiede zwischen C++ und C 1 Grundlegende Unterschiede File-Extensions (Header und Quellcode)

Mehr

C++-Entwicklung mit Linux

C++-Entwicklung mit Linux C++-Entwicklung mit Linux Eine Einführung in die Sprache und die wichtigsten Werkzeuge von GCC und XEmacs bis Eclipse Thomas Wieland [Druckvorlage vom 10. August 2004] xiii Inhaltsverzeichnis 1 Programmieren

Mehr

Programmierkurs C++ Templates & STL (1/2)

Programmierkurs C++ Templates & STL (1/2) Programmierkurs C++ Templates & STL (1/2) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer #2 Templates Die wichtigsten objekt-orientierten

Mehr

Praktische Eine Einführung

Praktische Eine Einführung Gregor Büchel Praktische Eine Einführung Lehr- und Arbeitsbuch mit Tafelbildern Mit 65 Abbildungen und Tabellen Springer Vorwort V 1 Was ist Informatik? 1 1.1 Datenflusspläne 2 1.1.1 Symbole eines 2 1.1.2

Mehr

Vorwort. Ulrich Breymann. Der C++-Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen ISBN:

Vorwort. Ulrich Breymann. Der C++-Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: Vorwort Ulrich Breymann Der C++-Programmierer C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: 978-3-446-42691-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42691-7

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Gunter Saake Kai-Uwe Sattler Algorithmen und Datenstrukturen Eine Einführung mit Java 4., überarbeitete Auflage dpunkt.verlag XI Inhaltsverzeichnis I Grundlegende Konzepte 1 1 Vorbemerkungen und Überblick

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Inhaltsverzeichnis. I Grundlegende Konzepte 1. xiii

Inhaltsverzeichnis. I Grundlegende Konzepte 1. xiii D3kjd3Di38lk323nnm xiii I Grundlegende Konzepte 1 1 Vorbemerkungen und Überblick... 3 1.1 Informatik, Algorithmen und Datenstrukturen....... 3 1.2 Historischer Überblick: Algorithmen................. 5

Mehr

Vorwort. Der C++-Programmierer (3. Auflage)

Vorwort. Der C++-Programmierer (3. Auflage) Vorwort zu Der C++-Programmierer (3. Auflage) von Ulrich Breymann ISBN (Buch): 978-3-446-43894-1 ISBN (E-Book): 978-3-446-43953-5 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43894-1

Mehr

Inhaltsverzeichnis. Vorwort...XIII. Aufbau des Buches...

Inhaltsverzeichnis. Vorwort...XIII. Aufbau des Buches... Inhaltsverzeichnis Vorwort...XIII Aufbau des Buches............................................... XV 1 Von der Idee zur Software..................................... 1 1.1 Beispielanwendung... 1 1.2 Schritte

Mehr

magnum C++ WALTER SAUMWEBER kompakt komplett kompetent

magnum C++ WALTER SAUMWEBER kompakt komplett kompetent magnum C++ WALTER SAUMWEBER kompakt komplett kompetent Quickview... 5 Liebe Leserin, lieber Leser... 13 Teil 1 Grundlagen... 15 1 Was ist Programmieren?... 17 1.1 Was ist eigentlich ein Computerprogramm?...

Mehr

Kapitel 11: Wiederholung und Zusammenfassung

Kapitel 11: Wiederholung und Zusammenfassung Wiederholung und Zusammenfassung 1: Begriff und Grundprobleme der Informatik Begriff Informatik Computer als universelle Rechenmaschine Grenzen der Berechenbarkeit Digitalisierung Problem der Komplexität

Mehr

Stand: Semester: Dauer: Modulnummer: Minimaldauer 1 Semester IOBP. Regulär angeboten im: Modultyp: Pflicht WS, SS

Stand: Semester: Dauer: Modulnummer: Minimaldauer 1 Semester IOBP. Regulär angeboten im: Modultyp: Pflicht WS, SS Modulbezeichnung: Objektorientierte Programmierung Modulnummer: IOBP Semester: -- Dauer: Minimaldauer 1 Semester Modultyp: Pflicht Regulär angeboten im: WS, SS Workload: 300 h ECTS Punkte: 10 Zugangsvoraussetzungen:

Mehr

Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11. vii. Inhaltsverzeichnis

Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11. vii. Inhaltsverzeichnis Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11 vii 1 Einführung 1 1.1 Motivation.................................... 1 1.2 Vorteile der neuen Techniken...................... 3 1.3 Aufbau des

Mehr

Eine praktische Einführung in die Programmierung mit der Programmiersprache C

Eine praktische Einführung in die Programmierung mit der Programmiersprache C Eine praktische Einführung in die Programmierung mit der Programmiersprache C www.c-howto.de C-HowTo www.c-howto.de Inhaltsverzeichnis 1 Einführung.. 10 1:1 Wozu Programmieren? 10 1.2 Was ist ein Programm?

Mehr

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217 EIDI 1 Einführung in die Informatik 1 PGdP Praktikum Grundlagen der Programmierung Harald Räcke 2/217 Wie löst man Probleme mithilfe von Computern? 0 Harald Räcke 3/217 Inhalte: EIDI 1 1. Was ist das Problem?

Mehr

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme?

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme? Liebe Leserin, lieber Leser 10 Kapitel i: Schnelleinstieg 13 Kapitel 2: Was sind Programme? 17 Was ist ein Programm? 18 Sprechen Sie Computer? 18 Von der Idee zum Programm 19 Von Windows, Fenstern und

Mehr

Einführung in die Programmiersprache C#

Einführung in die Programmiersprache C# Einführung in die Programmiersprache C# C# Übersicht Einführung in das.net Framework Konzepte / Architektur Einführung in C#, speziell Unterschiede zu Java .NET: Framework, Sprachen und Werkzeuge .NET

Mehr

Java als erste Programmiersprache

Java als erste Programmiersprache Joachim Goll Cornelia Weiß Frank Müller Java als erste Programmiersprache Vom Einsteiger zum Profi 3., durchgesehene und erweiterte Auflage Teubner B.G.Teubner Stuttgart Leipzig Wiesbaden \ 1 GRUNDBEGRIFFE

Mehr

Inhaltsverzeichnis. Teil 1 Grundlagen der Objektorientierung 29

Inhaltsverzeichnis. Teil 1 Grundlagen der Objektorientierung 29 Vorwort von James Gosling, Sun Microsystems 15 Vorwort an Kursleiter 16 Vorwort des Übersetzers 24 Projekte, die in diesem Buch detailliert besprochen werden 25 Danksagungen 27 Teil 1 Grundlagen der Objektorientierung

Mehr

Einführung in C# Teil 1. Matthias Nübling

Einführung in C# Teil 1. Matthias Nübling Einführung in C# Teil 1 Matthias Nübling Vorausgesetzte Grundkenntnisse Programmierung Typen, Variablen, Anweisungen, Funktionen, etc. Objektorientierte Programmierung Klassen, Vererbung, Polymorphismus,

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Bernhard Lahres, Gregor Rayman Objektorientierte Programmierung Das umfassende Handbuch Galileo Press 1.1 Was ist Objektorientierung? 13 1.2 Hallo liebe Zielgruppe 14 1.3 Was bietet dieses Buch (und was

Mehr

Inhaltsverzeichnis Einleitung Imperative Sprachkonzepte Objektorientierte Sprachkonzepte

Inhaltsverzeichnis Einleitung Imperative Sprachkonzepte Objektorientierte Sprachkonzepte Inhaltsverzeichnis 1 Einleitung... 1 1.1 Entwicklungsumgebung... 1 1.2 Vom Quellcode zum ausführbaren Programm... 3 1.3 Erste Beispiele... 4 1.4 Wichtige Merkmale der Programmiersprache Java... 6 1.5 Zielsetzung

Mehr

vii 4 t.scheme: Funktionale Programmierung Funktionen als Daten erster Klasse

vii 4 t.scheme: Funktionale Programmierung Funktionen als Daten erster Klasse Inhaltsverzeichnis Einleitung 1 Kaffee oder Tee?................................ 1 Die t.sprachen.................................. 2 Die Java-Implementierung........................... 5 Ockhams Rasiermesser.............................

Mehr

Software Engineering

Software Engineering Software Engineering Gustav Pomberger, Wolfgang Pree Architektur-Design und Prozessorientierung ISBN 3-446-22429-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22429-7 sowie

Mehr

Programmieren in C. Die C-Standardbibliothek. Prof. Dr. Nikolaus Wulff

Programmieren in C. Die C-Standardbibliothek. Prof. Dr. Nikolaus Wulff Programmieren in C Die C-Standardbibliothek Prof. Dr. Nikolaus Wulff Die C-Standard Bibliothek Mit dem C Compiler werden viel fertige Bibliotheksfunktionen ausgeliefert. Eine genaue Kenntnis dieser Funktionen

Mehr

C++für Naturwissenschaftler

C++für Naturwissenschaftler Dietmar Herrmann C++für Naturwissenschaftler Beispielorientierte Einführung ADDISON-WESLEY An imprint of Addison Wesley Longman, Inc. Bonn Reading, Massachusetts Menlo Park, California New York Harlow,

Mehr

Praxisbuch Objektorientierung

Praxisbuch Objektorientierung Bernhard Lahres, Gregor Rayman Praxisbuch Objektorientierung Von den Grundlagen zur Umsetzung Galileo Press 1.1 Was ist Objektorientierung? 11 1.2 Hallo liebe Zielgruppe 12 1.3 Was bietet dieses Buch (und

Mehr

JavaScript O'REILLY. Das umfassende Referenzwerk. Deutsche Übersetzung von Ralf Kuhnert, Gisbert W. Selke & Harald Selke

JavaScript O'REILLY. Das umfassende Referenzwerk. Deutsche Übersetzung von Ralf Kuhnert, Gisbert W. Selke & Harald Selke JavaScript Das umfassende Referenzwerk David Flanagan Deutsche Übersetzung von Ralf Kuhnert, Gisbert W. Selke & Harald Selke O'REILLY Cambridge Köln Paris Sebastopol Tokyo Vorwort xiii 1: Einführung in

Mehr

Programmieren 2 C++ Überblick

Programmieren 2 C++ Überblick Programmieren 2 C++ Überblick 1. Einführung und Überblick 2. Klassen und Objekte: Datenkapselung 3. Erzeugung und Vernichtung von Objekten 4. Ad-hoc Polymorphismus 5. Behälter und Iteratoren 6. Templates

Mehr

DAP2-Programmierpraktikum Einführung in C++ (Teil 2)

DAP2-Programmierpraktikum Einführung in C++ (Teil 2) DAP2-Programmierpraktikum Einführung in C++ (Teil 2) Carsten Gutwenger 18. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Dynamischer Speicher Klassen und

Mehr

Inhaltsverzeichnis 1. Objektorientierung: Ein Einstieg 2. Objekte, Klassen, Kapselung

Inhaltsverzeichnis 1. Objektorientierung: Ein Einstieg 2. Objekte, Klassen, Kapselung Inhaltsverzeichnis 1. Objektorientierung: Ein Einstieg... 1 1.1 Objektorientierung: Konzepte und Stärken...... 1 1.1.1 Gedankliche Konzepte der Objektorientierung....... 2 1.1.2 Objektorientierung als

Mehr

1 Die Entwicklungsumgebung...1

1 Die Entwicklungsumgebung...1 Inhalt 1 Die Entwicklungsumgebung...1 1.1 Visuelle Programmierung: Ein erstes kleines Programm... 2 1.2 Erste Schritte in C++... 6 1.3 Der Quelltexteditor... 9 1.4 Projekte, Projektdateien und Projektoptionen...12

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)

Mehr

Lehrplan Informatik. Unterrichtsvorhaben in der Qualikationsphase (Q1) Übersichtsraster: Nr. Beschreibung

Lehrplan Informatik. Unterrichtsvorhaben in der Qualikationsphase (Q1) Übersichtsraster: Nr. Beschreibung Lehrplan Informatik 2.1.1 Übersichtsraster: Unterrichtsvorhaben in der Qualikationsphase (Q1) Nr. Beschreibung 1 Thema: Wiederholung und Vertiefung der objektorientierten Modellierung (Memory/Hangman)

Mehr

Einführung in die Programmiersprache Java II

Einführung in die Programmiersprache Java II Einführung in die Programmiersprache Java II ??????????? UML OOP "Object oriented programming is bad" - professional retard 90s... UML Entwicklungsziele verschiedenen existierenden objektorienten Modellierungsmethoden

Mehr

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs funktionale Programmierung mit Scala ISBN:

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs funktionale Programmierung mit Scala ISBN: Lothar Piepmeyer Grundkurs funktionale Programmierung mit Scala ISBN: 978-3-446-42092-2 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42092-2 sowie im Buchhandel. Carl Hanser

Mehr

Programmierung Paradigmen und Konzepte

Programmierung Paradigmen und Konzepte Programmierung Paradigmen und Konzepte Mit 79 Bildern, 85 Beispielen, 130 Aufgaben und Kontrollfragen und 19 Referatsthemen Fachbuchverlag Leipzig im Carl Hanser Verlag 1 Einführung und Überblick 11 1.1

Mehr

Programmiertechnik II SS Fakultät Informatik Bachelor Angewandte Informatik

Programmiertechnik II SS Fakultät Informatik Bachelor Angewandte Informatik Programmiertechnik II SS 2017 Fakultät Informatik Bachelor Angewandte Informatik Prof. Dr. Oliver Bittel bittel@htwg-konstanz.de www-home.htwg-konstanz.de/~bittel SS 2017 Überblick! OOP: Schnittstellen

Mehr