C/C++ - Kompendium - PDF

Größe: px
Ab Seite anzeigen:

Download "C/C++ - Kompendium - PDF"

Transkript

1 C/C++ Kompendium

2 Die Deutsche Bibliothek CIP-Einheitsaufnahme Ein Titeldatensatz für diese Publikation ist bei Der Deutschen Bibliothek erhältlich. Die Informationen in diesem Buch werden ohne Rücksicht auf einen eventuellen Patentschutz veröffentlicht. Warennamen werden ohne Gewährleistung der freien Verwendbarkeit benutzt. Bei der Zusammenstellung von Texten und Abbildungen wurde mit größter Sorgfalt vorgegangen. Trotzdem können Fehler nicht vollständig ausgeschlossen werden. Verlag, Herausgeber und Autoren können für fehlerhafte Angaben und deren Folgen weder eine juristische Verantwortung noch irgendeine Haftung übernehmen. Für Verbesserungsvorschläge und Hinweise auf Fehler sind Verlag und Herausgeber dankbar. Alle Rechte vorbehalten, auch die der fotomechanischen Wiedergabe und der Speicherung in elektronischen Medien. Die gewerbliche Nutzung der in diesem Produkt gezeigten Modelle und Arbeiten ist nicht zulässig. Fast alle Hardware- und Softwarebezeichnungen, die in diesem Buch erwähnt werden, sind gleichzeitig auch eingetragene Warenzeichen oder sollten als solche betrachtet werden. Umwelthinweis: Dieses Buch wurde auf chlorfrei gebleichtem Papier gedruckt. Die Einschrumpffolie zum Schutz vor Verschmutzung ist aus umweltverträglichem und recyclingfähigem PE-Material ISBN by Markt+Technik Verlag, ein Imprint der Pearson Education Deutschland GmbH, Martin-Kollar-Straße 10 12, D München/Germany Alle Rechte vorbehalten Einbandgestaltung: Grafikdesign Heinz H. Rauner, Gmund Lektorat: Erik Franz, efranz@pearson.de Herstellung: Elisabeth Egger, eegger@pearson.de CD Mastering: Gregor Kopietz, gkopietz@pearson.de Satz: reemers publishing services gmbh, Krefeld ( Druck und Verarbeitung: Bercker, Kevelaer Printed in Germany

3 C/C++ - Kompendium - PDF Inhaltsverzeichnis C/C++ - Das komplette Programmierwissen für Studium und Job Inhaltsübersicht Inhaltsverzeichnis Es war einmal... Über dieses Buch Teil 1 Zur Einstimmung Kapitel 1 A, B, C die Geschichte von C und C++ Kapitel 2 Allgemeine Konzeption einer Programmiersprache 2.1 Die Hardware 2.2 Assembler 2.3 Der Compiler 2.4 Entwicklungsumgebungen Kapitel 3 Das Programmgerüst Einführung für Programmieranfänger 3.1 Was ist ein Programm?. 3.2 Ein einführendes Beispiel 3.3 Ein einführender Programmierkurs. 3.4 Stil 3.5 Allgemeine Hinweise 3.6 Abschlussquiz: Wie ein Zeichen ein Programm verändert Teil 2 Die Daten Kapitel 4 Variablen 4.1 Deklaration und Definition 4.2 Gültigkeitsbereiche, Speicherklasse und Lebensdauer 4.3 Namensbereiche (nur C++) 4.4 Spezifizierer für die Variablendeklaration 4.5 Abschlussquiz: Deklarationen und Typen Kapitel 5 Konstanten 5.1 Literale konstante Werte 5.2 #define symbolische Konstanten 5.3 const konstante Variablen 5.4 Abschlussprogramm: Umrechnung zwischen Zahlensystemen Kapitel 6 Elementare Datentypen 6.1 Klassifizierung der elementaren Datentypen 6.2 short, int und long 6.3 float, double und long double 6.4 bool (nur C++) 6.5 char und wchar_t 6.6 void 6.7 Selbst definierte Datentypen 6.8 Typspezifizierer 6.9 Typumwandlung 6.10 Abschlussprogramm: Texte kodieren

4 Kapitel 7 Operatoren und Ausdrücke 7.1 Ausdrücke 7.2 Vorzeichen 7.3 Arithmetische Operatoren 7.4 Zuweisungsoperatoren 7.5 Inkrement-Operatoren 7.6 Vergleichsoperatoren 7.7 Logische Operatoren 7.8 Bit-Operatoren. 7.9 Datenzugriff 7.10 new und delete (nur C++) 7.11 Operatoren für den Präprozessor 7.12 Spezielle Operatoren 7.13 Typumwandlung 7.14 Synonyme und Trigraphsequenzen 7.15 Reihenfolge der Operator-Abarbeitung 7.16 Überladung von Operatoren (nur C++) 7.17 Abschlussprogramm: ein Taschenrechner Kapitel 8 Eigene Datentypen 8.1 Aufzählungen (enum) 8.2 Arrays 8.3 Strukturen (struct) 8.4 Unions (union) 8.5 Klassen (nur C++) 8.6 Typdefinitionen mit typedef 8.7 Unvollständige Datentypen 8.8 Abschlussprogramm: Adressenverwaltung Kapitel 9 Zeiger 9.1 Zeiger deklarieren 9.2 Mit Zeigern programmieren 9.3 Spezielle Zeiger. 9.4 Dynamische Speicherreservierung 9.5 Abschlussprogramm: Eene, meene, muh Kapitel 10 Referenzvariablen (nur C++) 10.1 Referenzvariablen deklarieren 10.2 Mit Referenzen programmieren Teil 3 Steuerung des Programmablaufs Kapitel 11 Kontrollstrukturen 11.1 Verzweigungen die if-bedingung 11.2 Die switch-verzweigung 11.3 Die for- Schleife 11.4 Die while-schleife 11.5 Schleifen abbrechen 11.6 Sprünge mit goto Kapitel 12 Funktionen 12.1 Was sind Funktionen?

5 12.2 Funktionen definieren 12.3 Funktionen, Programmablauf und Stack 12.4 Datenaustausch zwischen Funktionen 12.5 Besondere Funktionen 12.6 Überladung (nur C++) 12.7 Bibliotheken anlegen Kapitel 13 Fehlerbehandlung (mit und ohne Exceptions) 13.1 Möglichkeiten der Fehlerbehandlung 13.2 Aufbau einer Exception-Behandlung 13.3 Programmfluss und Exception-Behandlung 13.4 Komponenten der Exception-Behandlung 13.5 Vorteile der Exception-Behandlung 13.6 Die Exceptions von C++ und der ANSI-Bibliothek 13.7 Funktionen zur Unterstützung der Exception-Behandlung Kapitel 14 Präprozessor-Direktiven 14.1 Einfügen von Dateien mittels #include 14.2 Konstanten und Makros 14.3 Bedingte Kompilierung 14.4 Sonstige Direktiven und Symbole Teil 4 Objektorientiert programmieren Kapitel 15 Einführung in die objektorientierte Denkweise Kapitel 16 Klassen 16.1 Klassen deklarieren 16.2 Instanzbildung 16.3 Instanzvariablen (Eigenschaften) 16.4 Methoden (Verhaltensweisen) 16.5 Die Zugriffsspezifizierer public, protected, private 16.6 Die Konstruktoren Objekte einrichten 16.7 Der Destruktor Objekte auflösen 16.8 Der Kopierkonstruktor und Zuweisungsoperator 16.9 Konvertierungskonstruktor und -methoden Fünf Variablentypen und fünf Standardelemente Typdefinitionen in Klassen Friends Abschlussprogramm: Magische Quadrate Kapitel 17 Vererbung 17.1 Syntax der Vererbung 17.2 Grundlagen der Vererbung 17.3 Zugriffsbeschränkung bei der Vererbung 17.4 Abgeleitete Klassen anpassen 17.5 Vererbung und Konstruktor Beziehung zwischen abgeleiteter Klasse und Basisklasse 17.7 Elementobjekte versus Vererbung 17.8 Mehrfachvererbung Abschlussübung: Anpassung einer Klassenhierarchie an die Mehrfachvererbung Kapitel 18 Polymorphismus

6 18.1 Idee und Umsetzung 18.2 Virtuelle Methoden und Überschreibung 18.3 Abstrakte Methoden und Klassen 18.4 Generische Zeiger 18.5 Überladung versus Überschreibung Kapitel 19 Zugriff auf Klassenelemente 19.1 Public, protected, private 19.2 Zugriff innerhalb der Klasse 19.3 Zugriff aus abgeleiteter Klasse 19.4 Zugriff von außerhalb der Klasse 19.5 Zugriff über Friends Kapitel 20 Templates 20.1 Templates und Typenunabhängigkeit 20.2 Funktionstemplates 20.3 Klassentemplates 20.4 Instanzbildung und Spezialisierung Genauer hingeschaut: die Template-Parameter Kapitel 21 Laufzeitidentifizierung (RTTI) 21.1 Wofür braucht man RTTI? 21.2 Wie funktioniert die RTTI? 21.3 Virtuelle Methoden 21.4 Umwandlung mit dynamic_cast 21.5 Der typeid()-operator Kapitel 22 Objektorientiertes Programmieren 22.1 Kapselung und Information Hiding 22.2 Datensicherheit 22.3 Vererbung und Wiederverwertung 22.4 Polymorphismus 22.5 Abstrakte Klassen als Schnittstellenvorgaben 22.6 Eingeschlossene Objekte versus Vererbung 22.7 Die Bedeutung der Standardelemente 22.8 Erweiterung der Standardkonvertierungen Typenunabhängigkeit mit Templates Exception Handling Kapitel 23 Zeichenketten und Strings 23.1 Strings als Zeichenketten (C) 23.2 Strings als Klasseninstanzen (C++) Kapitel 24 Ein- und Ausgabe 24.1 Formatierte und unformatierte E/A 24.2 Was sind Streams? 24.3 Bildschirm und Tastatur 24.4 Dateien Kapitel 25 Modulare Programmierung 25.1 Sinn, Zweck und Problematik der Modularisierung 25.2 Programme aus mehreren Quelldateien erstellen 25.3 Elemente über Dateigrenzen hinweg verwenden 25.4 Elemente auf einzelne Dateien begrenzen

7 25.5 Header- Dateien sinnvoll einsetzen 25.6 Von der Quelltextdatei zur Bibliothek Kapitel 26 System-Programmierung 26.1 Zeit abfragen 26.2 Interrupt-Programmierung und Hook-Funktionen 26.3 Umgebungsvariablen 26.4 Kommandozeilenargumente 26.5 Ports (serielle Schnittstellen) Kapitel 27 Internationalisierung und Lokalisierung 27.1 Der Zeichensatz 27.2 Nationale Formatierungen und Lokale 27.3 Text und Stringtabellen Kapitel 28 Windows-GUI-Programmierung 28.1 Windows-Grundlagen 28.2 API-Programmierung 28.3 MFC-Programmierung 28.4 RAD-Programmierung 28.5 Welcher Compiler ist nun für Sie der Richtige? 28.6 Windows-Programme mit Visual C++ Kapitel 29 Datenbank-Programmierung 29.1 Anbindung und Nutzung bestehender Datenbanksysteme 29.2 Datenbankprogrammierung mit Visual C Datenbankprogrammierung mit dem C++Builder Kapitel 30 Assembler-Programmierung 30.1 Grundlagen der Assembler-Programmierung 30.2 Die wichtigsten Register 30.3 Die wichtigsten Befehle 30.4 Assembler-Anweisungen in C++-Programmen Kapitel 31 Genetische Algorithmen 31.1 Was sind genetische Algorithmen? 31.2 Wie implementiert man genetische Algorithmen? 31.3 Wie steuert man genetische Algorithmen? Kapitel 32 Objektorientiertes Design 32.1 OOA, OOD und UML 32.2 Projektplanung 32.3 Die Analyse-Phase 32.4 Die Design-Phase Kapitel 33.NET-Framework-Programmierung, Managed C++ und C# 33.1 Das.NET-Framework 33.2 Managed C C# Teil 5 Anhang Anhang A Die C-Laufzeitbibliothek Anhang B Die C++-Laufzeitbibliothek B.1 Die Container-Klassen. B.2 Der Gebrauch von Iteratoren

8 B.3 Die Algorithmen. B.4 Funktionsobjekte B.5 Die Stream-Klassen B.6 Die String-Klassen B.7 Sonstige Klassen Anhang C Zeichensatz C.1 Der ASCII-Zeichensatz C.2 Der ANSI-Zeichensatz Anhang D Literaturverzeichnis Anhang E Internet-Adressen Anhang F Glossar Anhang G Zur CD-ROM G.1 Die Visual C++ Autoren-Edition G.2 Erstellung und Ausführung der Beispielprogramme Stichwortverzeichnis Es war einmal... Über dieses Buch Teil 1 Zur Einstimmung 1 A, B, C die Geschichte von C und C++ 2 Allgemeine Konzeption einer Programmiersprache 2.1 Die Hardware Die Hardware- Umgebung Die CPU 2.2 Assembler 2.3 Der Compiler Ablauf der Programmerstellung Größere Programme erstellen Compiler versus Interpreter Die Kommunikation mit dem Compiler 2.4 Entwicklungsumgebungen 3 Das Programmgerüst Einführung für Programmieranfänger 3.1 Was ist ein Programm? 3.2 Ein einführendes Beispiel Hello, world in C und C Einbindung der Header-Dateien Ein umfangreicheres Beispiel 3.3 Ein einführender Programmierkurs Kommentare Datenelemente Operationen auf Daten Programmablauf Funktionen Präprozessor-Direktiven Die Funktion printf()

9 3.3.8 scanf() und wie man es vermeiden kann 3.4 Stil 3.5 Allgemeine Hinweise Goldene Regeln für Anfänger Von A wie Anweisung bis W wie Whitespace Hinweise für Umsteiger von Pascal Hinweise für Umsteiger von Java 3.6 Abschlussquiz: Wie ein Zeichen ein Programm verändert Teil 2 Die Daten 4 Variablen 4.1 Deklaration und Definition Die Bedeutung der Deklaration Namensgebung für Bezeichner Unterschied zwischen Deklaration und Definition Initialisierung Variablen in Anweisungen 4.2 Gültigkeitsbereiche, Speicherklasse und Lebensdauer Gültigkeitsbereiche Sichtbarkeit Speicherklasse und Lebensdauer Linkage 4.3 Namensbereiche (nur C++) Namensbereiche und globaler Gültigkeitsbereich Namensbereiche definieren Auf Elemente aus Namensbereichen zugreifen Erweiterung von Namensbereichen Aliase Unbenannte (anonyme) Namespaces statt statischer Variablen 4.4 Spezifizierer für die Variablendeklaration Speicherklassenspezifizierer Die Typqualifizierer const und volatile 4.5 Abschlussquiz: Deklarationen und Typen 5 Konstanten 5.1 Literale konstante Werte 5.2 #define symbolische Konstanten 5.3 const konstante Variablen 5.4 Abschlussprogramm: Umrechnung zwischen Zahlensystemen 6 Elementare Datentypen 6.1 Klassifizierung der elementaren Datentypen Was sind elementare Datentypen? Wie werden die elementaren Datentypen klassifiziert? Wofür werden Datentypen benötigt? 6.2 short, int und long 6.3 float, double und long double

10 6.4 bool (nur C++) 6.5 char und wchar_t 6.6 void 6.7 Selbst definierte Datentypen 6.8 Typspezifizierer 6.9 Typumwandlung Wann sind zwei Typen kompatibel? Automatische Konvertierung Explizite Typumwandlung 6.10 Abschlussprogramm: Texte kodieren 7 Operatoren und Ausdrücke 7.1 Ausdrücke Aufbau Seiteneffekte Aufeinander folgende Operatoren 7.2 Vorzeichen 7.3 Arithmetische Operatoren Allgemeines Division und Modulo Konvertierung arithmetischer Operanden Polynomberechnung nach Horner-Schema 7.4 Zuweisungsoperatoren Allgemeines Zuweisung an Zeiger Zuweisung an Klasseninstanzen (nur C++) 7.5 Inkrement-Operatoren Allgemeines Präfix und Postfix 7.6 Vergleichsoperatoren Allgemeines 7.7 Logische Operatoren Allgemeines Die Operatoren im Einzelnen 7.8 Bit-Operatoren Allgemeines Die Bit- Operatoren im Einzelnen Flags (Schaltervariablen) 7.9 Datenzugriff Allgemeines Die Operatoren im Einzelnen 7.10 new und delete (nur C++) new-operator (nur C++) delete-operator (nur C++) 7.11 Operatoren für den Präprozessor 7.12 Spezielle Operatoren

11 & Adress- Operator & Referenz-Operator (nur C++) ?: Bedingungsoperator , Komma-Operator Der sizeof-operator 7.13 Typumwandlung Explizite Typumwandlung mit () Die neuen C++-Operatoren zur Typumwandlung Typidentifizierung (nur C++) 7.14 Synonyme und Trigraphsequenzen 7.15 Reihenfolge der Operator-Abarbeitung 7.16 Überladung von Operatoren (nur C++) Syntax Global oder in Klasse? Rückgabewerte von Operatoren Überladung der Operatoren Überladung des Zuweisungsoperators =() Überladung der op=-operatoren Überladung des ++-Operators Überladung des cast-operators Überladung des []-Operators Überladung des ()-Operators Überladung des new-operators Überladung der Dereferenzierungsoperatoren -> und * Überladung der stream-operatoren 7.17 Abschlussprogramm: ein Taschenrechner 8 Eigene Datentypen 8.1 Aufzählungen (enum) Aufzählungen deklarieren Initialisierung Programmieren mit Aufzählungen Aufzählungen als Mengentypen 8.2 Arrays Arrays deklarieren Initialisierung und Zugriff Programmieren mit Arrays Wie funktionieren Arrays? Besondere Array-Typen Mehrdimensionale Arrays Stringtabellen Matrizen 8.3 Strukturen (struct) Strukturen deklarieren Initialisierung und Zugriff Programmieren mit Strukturen Speicherbelegung für Strukturen

12 8.3.5 Bitfelder 8.4 Unions (union) 8.5 Klassen (nur C++) Klassendeklaration 8.6 Typdefinitionen mit typedef Deklaration Programmierung mit typedef 8.7 Unvollständige Datentypen 8.8 Abschlussprogramm: Adressenverwaltung 9 Zeiger 9.1 Zeiger deklarieren 9.2 Mit Zeigern programmieren Warum sind Zeiger so gefährlich? Grundregeln für Anfänger Wofür braucht man Zeiger? Zeiger und Arrays Zeigerarithmetik 9.3 Spezielle Zeiger 9.4 Dynamische Speicherreservierung Speicherkonzepte DOS und die segmentierte Adressierung Bit-Systeme Speicherallokation mit malloc() und new Dynamische Datenstrukturen Typische Fehlerquellen 9.5 Abschlussprogramm: Eene, meene, muh 10 Referenzvariablen (nur C++) 10.1 Referenzvariablen deklarieren 10.2 Mit Referenzen programmieren Referenzen und Zeiger Referenzen und temporäre Variablen Teil 3 Steuerung des Programmablaufs 11 Kontrollstrukturen 11.1 Verzweigungen die if-bedingung Praktischer Einsatz der if-verzweigung Bedingungen und boolesche Ausdrücke Fallstricke und Besonderheiten 11.2 Die switch-verzweigung Praktischer Einsatz der switch-verzweigung Fallstricke und Besonderheiten 11.3 Die for-schleife Praktischer Einsatz der for-schleife Performance-Tips Spezielle for-schleifen

13 11.4 Die while-schleife Praktischer Einsatz der while-schleife Performance-Tipps Spezielle while-schleifen 11.5 Schleifen abbrechen continue break 11.6 Sprünge mit goto 12 Funktionen 12.1 Was sind Funktionen? Aufbau einer Funktion Was der Compiler von einer Funktionsdeklaration erwartet Die Funktionen der Laufzeitbibliothek Wozu braucht man Funktionen? 12.2 Funktionen definieren 12.3 Funktionen, Programmablauf und Stack 12.4 Datenaustausch zwischen Funktionen Parameter Globale Variablen Lokale Variablen und static Rückgabewert 12.5 Besondere Funktionen Die Hauptfunktion main() Rekursive Funktionen Funktionen mit beliebig vielen Parametern Inline-Funktionen (nur C++) Vorgabeargumente (nur C++) 12.6 Überladung (nur C++) 12.7 Bibliotheken anlegen Von der Funktionensammlung zur Bibliothek Vergleich von Bibliotheken 13 Fehlerbehandlung ( mit und ohne Exceptions) 13.1 Möglichkeiten der Fehlerbehandlung 13.2 Aufbau einer Exception-Behandlung 13.3 Programmfluss und Exception-Behandlung Wo wird der Programmfluss nach einer Exception fortgesetzt? Die Problematik des gestörten Programmflusses 13.4 Komponenten der Exception-Behandlung Exceptions abfangen Exceptions auslösen 13.5 Vorteile der Exception-Behandlung 13.6 Die Exceptions von C++ und der ANSI-Bibliothek 13.7 Funktionen zur Unterstützung der Exception- Behandlung 14 Präprozessor-Direktiven

14 14.1 Einfügen von Dateien mittels #include 14.2 Konstanten und Makros Symbolische Konstanten Makros 14.3 Bedingte Kompilierung 14.4 Sonstige Direktiven und Symbole Teil 4 Objektorientiert programmieren 15 Einführung in die objektorientierte Denkweise 16 Klassen 16.1 Klassen deklarieren Syntax Logischer Aufbau einer Klasse Instanzbildung und Zugriff auf Elemente 16.2 Instanzbildung Sinn und Zweck der Konstruktoren Aufruf der Konstruktoren Initialisierung 16.3 Instanzvariablen (Eigenschaften) Allgemeines Statische Elementvariablen (Klassenvariablen) Konstante und veränderbare Elemente Eingebettete Klassenobjekte 16.4 Methoden (Verhaltensweisen) Allgemeines Definition innerhalb der Klassendefinition Definition außerhalb der Klassendefinition Der this-zeiger Statische Methoden Konstante Methoden Virtuelle Methoden Überladung 16.5 Die Zugriffsspezifizierer public, protected, private 16.6 Die Konstruktoren Objekte einrichten Der Standardkonstruktor Eigene Konstruktoren Konstruktoren überladen Arrays von Objekten private- und protected-konstruktoren 16.7 Der Destruktor Objekte auflösen 16.8 Der Kopierkonstruktor und Zuweisungsoperator 16.9 Konvertierungskonstruktor und -methoden Fünf Variablentypen und fünf Standardelemente Typdefinitionen in Klassen Aufzählungen in Klassen Verschachtelte Klassen

15 16.12 Friends Abschlussprogramm: Magische Quadrate 17 Vererbung 17.1 Syntax der Vererbung 17.2 Grundlagen der Vererbung Was bringt uns die Vererbung? Was wird vererbt? Wie greift man auf geerbte Elemente zu? Welche Zugriffsspezifizierer haben geerbte Elemente in der abgeleiteten Klasse? Ein Beispiel 17.3 Zugriffsbeschränkung bei der Vererbung 17.4 Abgeleitete Klassen anpassen 17.5 Vererbung und Konstruktor Einrichtung der geerbten Elemente Vom Wert des Standardkonstruktors Aufruf spezieller Basisklassenkonstruktoren Der Destruktor 17.6 Beziehung zwischen abgeleiteter Klasse und Basisklasse 17.7 Elementobjekte versus Vererbung 17.8 Mehrfachvererbung Basisklassen mit gleich lautenden Elementen Kreisschlüsse in der Vererbung Virtuelle Basisklassen Mehrfachvererbung und Speicherauslegung 17.9 Abschlussübung: Anpassung einer Klassenhierarchie an die Mehrfachvererbung 18 Polymorphismus 18.1 Idee und Umsetzung Die grundlegende Klassenhierarchie Abgeleitete Objekte als Basisklassenobjekte Virtuelle Methoden Abstrakte Klassen 18.2 Virtuelle Methoden und Überschreibung Die Überschreibung Virtuelle Methoden Frühe und späte Bindung Realisierung der späten Bindung Regeln für die Überschreibung 18.3 Abstrakte Methoden und Klassen Rein virtuelle Funktionen Abstrakte Klassen 18.4 Generische Zeiger 18.5 Überladung versus Überschreibung 19 Zugriff auf Klassenelemente

16 19.1 Public, protected, private 19.2 Zugriff innerhalb der Klasse 19.3 Zugriff aus abgeleiteter Klasse 19.4 Zugriff von außerhalb der Klasse 19.5 Zugriff über Friends 20 Templates 20.1 Templates und Typenunabhängigkeit Templates versus Standardkonvertierungen Templates versus Makros Templates und überladene Funktionen 20.2 Funktionstemplates 20.3 Klassentemplates 20.4 Instanzbildung und Spezialisierung Implizite Instanziierung Explizite Instanziierung Explizite Spezialisierung 20.5 Genauer hingeschaut: die Template-Parameter 21 Laufzeitidentifizierung (RTTI) 21.1 Wofür braucht man RTTI? 21.2 Wie funktioniert die RTTI? 21.3 Virtuelle Methoden 21.4 Umwandlung mit dynamic_cast 21.5 Der typeid()-operator 22 Objektorientiertes Programmieren 22.1 Kapselung und Information Hiding 22.2 Datensicherheit 22.3 Vererbung und Wiederverwertung 22.4 Polymorphismus 22.5 Abstrakte Klassen als Schnittstellenvorgaben 22.6 Eingeschlossene Objekte versus Vererbung 22.7 Die Bedeutung der Standardelemente 22.8 Erweiterung der Standardkonvertierungen 22.9 Typenunabhängigkeit mit Templates Exception Handling 23 Zeichenketten und Strings 23.1 Strings als Zeichenketten ( C ) Repräsentation von C-Strings C-Strings und Speicherverwaltung C-Strings bearbeiten 23.2 Strings als Klasseninstanzen ( C++ ) Die Klasse string Methoden und Operatoren der Klasse string 24 Ein- und Ausgabe

17 24.1 Formatierte und unformatierte E/A Formatierte Ein- und Ausgabe Unformatierte Ein- und Ausgabe 24.2 Was sind Streams? Streams in C und C Die C++-Streamklassen Formatierung Fehlerbehandlung Pufferung Internationalisierung 24.3 Bildschirm und Tastatur Die C-Funktionen printf(), scanf() Ein- und Ausgabe-Streams in C Dateien Dateien in C Die Datei- Streams von C++ 25 Modulare Programmierung 25.1 Sinn, Zweck und Problematik der Modularisierung 25.2 Programme aus mehreren Quelldateien erstellen 25.3 Elemente über Dateigrenzen hinweg verwenden 25.4 Elemente auf einzelne Dateien begrenzen 25.5 Header-Dateien sinnvoll einsetzen 25.6 Von der Quelltextdatei zur Bibliothek 26 System-Programmierung 26.1 Zeit abfragen 26.2 Interrupt-Programmierung und Hook-Funktionen 26.3 Umgebungsvariablen 26.4 Kommandozeilenargumente 26.5 Ports (serielle Schnittstellen) 27 Internationalisierung und Lokalisierung 27.1 Der Zeichensatz 27.2 Nationale Formatierungen und Lokale 27.3 Text und Stringtabellen 28 Windows-GUI-Programmierung 28.1 Windows-Grundlagen 28.2 API-Programmierung 28.3 MFC-Programmierung 28.4 RAD-Programmierung 28.5 Welcher Compiler ist nun für Sie der Richtige? 28.6 Windows-Programme mit Visual C++ 29 Datenbank-Programmierung 29.1 Anbindung und Nutzung bestehender Datenbanksysteme 29.2 Datenbankprogrammierung mit Visual C++

18 29.3 Datenbankprogrammierung mit dem C++Builder 30 Assembler-Programmierung 30.1 Grundlagen der Assembler-Programmierung 30.2 Die wichtigsten Register 30.3 Die wichtigsten Befehle 30.4 Assembler-Anweisungen in C++-Programmen 31 Genetische Algorithmen 31.1 Was sind genetische Algorithmen? 31.2 Wie implementiert man genetische Algorithmen? 31.3 Wie steuert man genetische Algorithmen? 32 Objektorientiertes Design 32.1 OOA, OOD und UML 32.2 Projektplanung 32.3 Die Analyse-Phase 32.4 Die Design-Phase 33.NET-Framework-Programmierung, Managed C++ und C# 33.1 Das.NET-Framework 33.2 Managed C C# Grundgerüst und Objektorientierung Konstanten Variablen und Datentypen Typumwandlung Strings Ein- und Ausgabe Operatoren Ablaufsteuerung Aufzählungen Wert- und Referenztypen Arrays Klassen Vererbung Schnittstellen Exception-Behandlung Mehr C# Teil 5 Anhang A Die C-Laufzeitbibliothek B Die C++-Laufzeitbibliothek B.1 Die Container-Klassen B.2 Der Gebrauch von Iteratoren B.3 Die Algorithmen B.4 Funktionsobjekte B.5 Die Stream-Klassen

19 B.6 Die String-Klassen B.7 Sonstige Klassen C Zeichensatz C.1 Der ASCII-Zeichensatz C.2 Der ANSI-Zeichensatz D Literaturverzeichnis E Internet-Adressen F Glossar G Zur CD-ROM G.1 Die Visual C++ Autoren-Edition G.2 Erstellung und Ausführung der Beispielprogramme Stichwortverzeichnis! -- (Dekrement-Operator)! (Negations-Operator) # (Präprozessor-Operator) ## (Präprozessor-Operator) #define (Direktive) #error #include (Direktive) #line #pragma % (Modulo-Operator) & (Adress-Operator) & (Bit-Operator) & (Referenz-Operator) && (Log. Operator) () (Cast-Operator) (Anweisung) (Indizierungsoperator) * (Indirektionsoperator) ++ (Inkrement-Operator), (Komma-Operator). (Punkt-Operator).* (Dereferenzierungsoperator).NET-Framework / (Divisions-Operator) /*-Kommentare //-Kommentare <, > (Vergleichsoperatoren) << (Left-Shift-Operator)

20 A -> (Elementverweis-Operator) ->* (Dereferenzierungsoperator) >> (Right-Shift-Operator)?: (Bedingungsoperator) \ (Backslash) ^ (Bit-Operator) {}" (Bit-Operator) (Log. Operator) ~ (Komplement-Operator) 2er-Komplement Abgeschlossenheit Ableitung abstrakte Klassen Adressbus Adressen Adress-Operator (&) Akkumulator Algorithmen Algorithmen (STL) ALU (Arithmetic and logic unit) ANSI C ANSI C++ ANSI C++-Bibliothek ANSI C-Bibliothek ANSI-Zeichensatz Anweisungen Arbeitsspeicher argc Argument argv Arithmetische Datentypen Arithmetische Operatoren Arithmetisches Mittel Arrays ASCII Assembler assert-makro Assoziativität (von Operatoren) Aufzählungen (enum) Ausdrücke

21 B C Ausgabe, Auslagerungsdateien Ausnahmebehandlung auto (Schlüsselwort) auto_ptr basic_ios basic_istream basic_ostream Basisklassen BCPL Bedingungen Bedingungsoperator (?:) Befehlsregister Beispielprogramme Bell Laboratories Bezeichner Bibliotheken Binärcodierung Binäre Suche Binärzahlen Bindung Bitfelder Bit-Operatoren bitset Blöcke bool (Datentyp) Boolesche Ausdrücke break (Schleifen) break (switch-verzweigung) BubbleSort C# C/C++ Cäsar-Chiffre call by reference call by value CASE-Tools catch-handler (Exceptions) cerr CGI char (Datentyp)

22 D Chomsky-Hierarchie cin class (Datentyp) clock_t (Datentyp) CLOCKS_PER_SEC (Konstante) clog Codierung Compiler CompuLab-Interface Computer const (Schlüsselwort) const_cast (Operator) Container (STL) continue (Schleifen) cout CPU (Central Processing Unit) Dateien Daten Datenbank-Programmierung Datenbus Datenstrukturen, Datentypen Datum Debuggen defined (Präprozessor-Operator) Definition Deklaration delete (Operator) deque Dereferenzierung Dereferenzierungsoperator.* Dereferenzierungsoperator ->* Design, objektorientiertes Design, objektorientiertes Siehe Objektorientiertes Design Destruktoren Dezimalzahlen Diagnose-Makro Divide&Conquer Division DOS, segmentierte Adressierung

23 E F double (Datentyp) dynamic_cast (Operator) E/A (Ein- und Ausgabe) EDOM Ein- und Ausgabe Eingabe, Einsteigerkurs Elementobjekte, versus Vererbung Elementverweis-Operator -> else (Verzweigung) endl Entwicklungsumgebungen enum ERANGE errno Escape-Sequenzen Evolution Evolutionäre Algorithmen Exception-Behandlung Exceptions explicit (Schlüsselwort) Exponent export (Schlüsselwort) extern (Schlüsselwort) externe Linkage externe Variablen Fakultät Fehler Fehlerbehandlung Fehlerfortpflanzung Felder Festspeicher fflush() Fibonacci-Zahlen flaches Kopieren Flag-Register Flags Fließkommazahlen float (Datentyp) flush()

24 G H I Fonts fopen() Formatierung Formatspezifizierer for-schleife fprintf() fread() friend (Schlüsselwort) Friends frühe Bindung fscanf() fseek() Function Overhead Funktionen Funktionensammlungen Funktionsobjekte (STL) fwrite() Gauß Gaußelimination Genetische Algorithmen Geschichte (von C/C++) Gleichungssysteme Gleitkomma-Typen Gleitkommazahlen globale Variablen Glossar goto (Sprung) Grammatiken Greenwich Mean Time Groß- und Kleinschreibung Gültigkeitsbereiche (scope) Gültigkeitsbereichsoperator: Hardware-Umgebung Harmonisches Mittel Header-Dateien Heap Hook-Funktionen Hornerschema

25 J K I/O IDE if-bedingung Indirektionsoperator * Indizierungsoperator Indizierungsoperator [] Information hiding Initialisierung Initialisierungslisten Inkrement-Operatoren inline (Funktionen) inline (Schlüsselwort) Instanzbildung Instanzen Instanzvariablen int (Datentyp) Integer-Typen Integer-Zahlen Integral Promotion Internationalisierung Internet-Adressen Interpretation Interpreter Interrupts ios_base Iteratoren (STL) Java Josephus, Flavius Josephus-Problem Kapselung Kellerautomat Klammerung Klassen Klassenhierarchien, Planung Klasseninstanzen Kommandozeilenargumente Komma-Operator (,) Kommentare Kompatibilität, zwischen Datentypen Kompilation

26 L M Konsolenprogramme Konstanten Konstruktoren Kontrollstrukturen Konvertierungen Konvertierungskonstruktor Konvertierungsmethoden Koordinatentransformation Kopierkonstruktor Kopieroperator Laufzeitbibliotheken, Laufzeitmessungen Lebensdauer Lineare Suche Linkage Linker list Literale Literaturverzeichnis locale Logische Operatoren Lokale lokale Variablen Lokalisierung Lokalisierung, Stringtabellen long (Datentyp) long double (Datentyp) L-Wert Magische Quadrate main() (Eintrittsfunktion) Make-Dateien Makros Managed C++ Manipulatoren Mantisse map Maschinenbefehle Matrizen Mehrdateienprogramme Mehrfachvererbung

27 N O P Mengen Methoden MFC Mittel Modularisierung Modulo MS Access Multibyte-Zeichen multimap multiset Multitasking Multithreading mutable (Schlüsselwort) Namen Namensbereiche namespaces Nebeneffekte new (Operator) NULL-Zeiger Objektdateien Objekte Objekthierarchien Objektorientierte Software-Entwicklung Objektorientiertes Design ODBC offsetof (Makro) OOD Siehe Objektorientiertes Design Operanden, Operandenkonvertierung operator Operatoren Operatoren, Komma-Operator, Optimierung OWL Parameter Parser Pascal PDP-11 PDP-7

28 Q R S Polymorphismus Ports Präfix/Postfix-Notation Präprozessor Primfaktorzerlegung printf() Priorität (von Operatoren) priority_queue private (Schlüsselwort) Programme Programmerstellung Programmfluss Programmieraufgaben Programmieraufgaben, Sortieren Programmierbeispiele Programmierung Projekte protected (Schlüsselwort) Prozessor public (Schlüsselwort) Punkt-Operator. queue Quicksort RAD (Rapid Application Development) RAM Rechner Rechnerarchitektur Referenzen Referenz-Operator (&) Register register (Schlüsselwort) reinterpret_cast (Operator) Rekursion return-anweisung RTTI (Laufzeitidentifizierung) Rundungsfehler R-Wert scanf()

29 Schablonen siehe Templates Schaltervariablen Schleifen Schleifenvariable Schlüsselwörter Schnittstelle (von Klassen) Seiteneffekte Sequenzpunkte Serielle Schnittstelle set short (Datentyp) Sichtbarkeit signed (Schlüsselwort) sizeof (Operator) Sonderzeichen Sortieren späte Bindung Speicher Speicherbelegung Speicherklassen Speicherklassenspezifizierer Speicherreservierung Speicherreservierung, dynamische Spezialisierung von Template Spezialisierung von Templates Sprachen Sprungmarken, Deklaration und Definition Stack Standardkonstruktoren static (Schlüsselwort) static_cast (Operator) Statistik stderr stdin stdout Steuern, mit dem PC Stil strcat() strchr() strcmp() strcpy() strcspn()

30 T strdup() Stream-Operatoren Streams stricmp() string (Klasse) String-Literale Strings Stringtabellen strlen() strncat() strncmp() strncpy() strnicmp() strpbrk() strrchr() strspn() strstr() strtod() strtok() strtol() strtoul() Strukturen Suchen switch-verzweigung Symbolische Konstanten Symboltabelle Systemprogrammierung Systemzeit abfragen Tabellen, virtuelle Taktgeber Tastaturbelegung Taylor-Reihe template (Schlüsselwort) Templates Tetris Textcodierung Texteditor (Dateiverwaltung) Textverarbeitung this (Instanzzeiger) throw (Exceptions) tiefes Kopieren

31 U V time_t (Struktur) tm (Struktur) tolower() toupper() Trigraph-Sequenzen try-blöcke (Exceptions) Typdefinitionen Typecasting typedef (Schlüsselwort) typeid (Operator) typename (Schlüsselwort) Typenprüfung, Makros Typenunabhängigkeit Typidentifizierung Typqualifizierer Typspezifizierer Typumwandlung Typunabhängigkeit, Templates Überladung Überlaufverhalten Überschreibung Übersetzungseinheit Umgebungsvariablen UML Umlaute, UNICODE Unions UNIX unsigned (Schlüsselwort) unsigned-typen using (Schlüsselwort) va_-makros Variablen vector Verdeckung Vererbung Vergleiche, Zeiger Vergleichsoperatoren Verschachtelung Verzweigungen

32 virtual (Schlüsselwort) virtuelle Tabellen visuelle Programmierung void (Schlüsselwort) volatile (Schlüsselwort) Vorgabeargumente Vorzeichen W Warteschleifen wchar_t (Datentyp) wchar_t (Datentyp), Literale Wertebereiche, unsigned-typen while-schleife Whitespace WideCharacters Wiederverwertung von Code Windows-Programmierung WinMain() Z Zahlensysteme Zeichen Zeichenketten Zeichensätze Zeiger Zeit und Datum Zeitgeber (Windows) Zufallszahlen Zugriff Zugriffsspezifizierer Zuweisungen Zuweisungsoperatoren Ins Internet: Weitere Infos zum Buch, Downloads, etc. Copyright

33 Copyright Daten, Texte, Design und Grafiken dieses ebooks, sowie die eventuell angebotenen ebook-zusatzdaten sind urheberrechtlich geschützt. Dieses ebook stellen wir lediglich als persönliche Einzelplatz-Lizenz zur Verfügung! Jede andere Verwendung dieses ebooks oder zugehöriger Materialien und Informationen, einschliesslich der Reproduktion, der Weitergabe, des Weitervertriebs, der Platzierung im Internet, in Intranets, in Extranets, der Veränderung, des Weiterverkaufs und der Veröffentlichung bedarf der schriftlichen Genehmigung des Verlags. Insbesondere ist die Entfernung oder Änderung des vom Verlag vergebenen Passwortschutzes ausdrücklich untersagt! Bei Fragen zu diesem Thema wenden Sie sich bitte an: Zusatzdaten Möglicherweise liegt dem gedruckten Buch eine CD-ROM mit Zusatzdaten bei. Die Zurverfügungstellung dieser Daten auf unseren Websites ist eine freiwillige Leistung des Verlags. Der Rechtsweg ist ausgeschlossen. Hinweis Dieses und viele weitere ebooks können Sie rund um die Uhr und legal auf unserer Website herunterladen

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

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Grundlagen. Die Komponenten eines C Programms. Das erste Programm Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern

C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung Eltern Kind Kind Vererbung Definition von Klassen auf Basis von bestehenden Klassen. Implementierung von ist ein. bildet ein hierarchisches

Mehr

Moderne C-Programmierung

Moderne C-Programmierung Xpert.press Moderne C-Programmierung Kompendium und Referenz Bearbeitet von Helmut Schellong 1. Auflage 2005. Buch. xii, 280 S. ISBN 978 3 540 23785 3 Format (B x L): 15,5 x 23,5 cm Weitere Fachgebiete

Mehr

C++-Zusammenfassung. H. Schaudt. August 18, 2005

C++-Zusammenfassung. H. Schaudt. August 18, 2005 C++-Zusammenfassung H. Schaudt August 18, 2005 1 Datentypen 1.1 Grunddatentypen int (-32xxx bis +32xxx, implementerungs-abhängig) char -128 bis +128 float double bool (C++) int und char sind austauschbar:

Mehr

Deklarationen in C. Prof. Dr. Margarita Esponda

Deklarationen in C. Prof. Dr. Margarita Esponda Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.

Mehr

Datenbankanwendungsprogrammierung Crashkurs Java

Datenbankanwendungsprogrammierung Crashkurs Java Datenbankanwendungsprogrammierung Crashkurs Java Denny Priebe Datenbankanwendungsprogrammierung p. Unterschiede zu C, C++ typedefs, Präprozessor Strukturen, Unions globale Funktionen Mehrfachvererbung

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

Programmierung I Von Python nach C++

Programmierung I Von Python nach C++ Interpreter und Compiler Programmierung I Von Python nach C++ Wintersemester 2004/2005 University Bonn Dr. Gabriel Zachmann 2 Arten der Programmausführung Compiler := Tool (Programm) das Source-Code übersetzt

Mehr

C++ für Spieleprogrammierer

C++ für Spieleprogrammierer C++ für Spieleprogrammierer Heiko Kalista 2., erweiterte Auflage ISBN 3-446-40332-9 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40332-9 sowie im Buchhandel

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

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

DAP2-Programmierpraktikum Einführung in C++ (Teil 1) DAP2-Programmierpraktikum Einführung in C++ (Teil 1) Carsten Gutwenger 11. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Mein erstes C++-Programm Namensräume

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen

Mehr

1Schnelleinstieg 14. 2Wie aus einer einfachen Textdatei. 3 Wie man eigene Programme erstellt 30. Inhaltsverzeichnis. ein Programm wird 20

1Schnelleinstieg 14. 2Wie aus einer einfachen Textdatei. 3 Wie man eigene Programme erstellt 30. Inhaltsverzeichnis. ein Programm wird 20 Inhaltsverzeichnis Liebe Leserin, lieber Leser!...13 1Schnelleinstieg 14 Welche Vorkenntnisse benötigen Sie für dieses Buch?...16 An wen richtet sich dieses Buch?...16 Was benötigen Sie, um die Programmiersprache

Mehr

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer

Mehr

Inhaltsverzeichnis. Vorwort.. 15

Inhaltsverzeichnis. Vorwort.. 15 Inhaltsvcrzeichnis 7 Inhaltsverzeichnis Vorwort.. 15 1 C++-Grundlagcn................................................ 19 Einc kurze Geschichte von C+ + 20 C: Del' Beginn dcr modcrncn Programrnierung 20

Mehr

Walter Saumweber. Richtig einsteigen: Programmieren lernen mit Visual C++ 2008

Walter Saumweber. Richtig einsteigen: Programmieren lernen mit Visual C++ 2008 Walter Saumweber Richtig einsteigen: Programmieren lernen mit Visual C++ 2008 Walter Saumweber: Richtig einsteigen: Programmieren lernen mit Visual C++ 2008 Microsoft Press Deutschland, Konrad-Zuse-Str.

Mehr

Informatik: Abschnitt 4

Informatik: Abschnitt 4 Informatik: Abschnitt 4 Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

C vs. C++ Sebastian Meyer. Proseminar C - Grundlagen und Konzepte. Universität Hamburg

C vs. C++ Sebastian Meyer. Proseminar C - Grundlagen und Konzepte. Universität Hamburg C vs. C++ Sebastian Meyer Universität Hamburg Proseminar C - Grundlagen und Konzepte 2013 1 / 31 Gliederung 1 Einführung 2 Vergleich der Spracheigenschaften 3 Neue Sprachelemente in C++ 4 Fazit 5 Zusammenfassung

Mehr

Widmung... 5. Einleitung... 15. Vorwort 15 Übersicht zu diesem Buch 17. 1 Einführung in die Welt der Objektorientierung... 21

Widmung... 5. Einleitung... 15. Vorwort 15 Übersicht zu diesem Buch 17. 1 Einführung in die Welt der Objektorientierung... 21 Inhaltsverzeichnis Widmung........................................ 5 Einleitung...................................... 15 Vorwort 15 Übersicht zu diesem Buch 17 1 Einführung in die Welt der Objektorientierung.........

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

Grundlagen der Programmierung in C Basics

Grundlagen der Programmierung in C Basics Grundlagen der Programmierung in C Basics Wintersemester 2005/2006 G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Was ist ein Programm? Abstrakt: Zeichenfolge entsprechend einer formalen

Mehr

C allgemein. C wurde unter und für Unix entwickelt. Vorläufer sind BCPL und B.

C allgemein. C wurde unter und für Unix entwickelt. Vorläufer sind BCPL und B. C-Crash-Kurs Eine kurze, keinesfalls erschöpfende Einführung in die Sprache C für Studierende, die eine strukturierte imperative Programmiersprache beherrschen. Die Vorstellung erfolgt am Beispiel von

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Objektorientiertes Programmieren für Ingenieure

Objektorientiertes Programmieren für Ingenieure Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen

Mehr

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only Methoden Wie Konstruktoren und Destruktoren zum Auf- und Abbau von Objekten definiert werden, Wie inline-methoden Methoden,, Zugriffsmethoden und Read-Only Only- Methoden einzusetzen sind, Der this-pointer

Mehr

Windows 8 auf Tablet-PCs

Windows 8 auf Tablet-PCs Windows 8 auf Tablet-PCs Michael Hülskötter Windows 8 auf Tablet-PCs Internet, Office, Multimedia Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Bibliothek verzeichnet diese

Mehr

[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.

[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z. Literatur [E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.zip [E-2] M.K. Johnson, E.W. Troan: Anwendungen

Mehr

1. Übung zu "Numerik partieller Differentialgleichungen"

1. Übung zu Numerik partieller Differentialgleichungen 1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:

Mehr

Hello world. Sebastian Dyroff. 21. September 2009

Hello world. Sebastian Dyroff. 21. September 2009 Hello world Sebastian Dyroff 21. September 2009 1 / 35 Inhaltsverzeichnis Organisatorisches Hello World Typen und Operatoren Programmfluss Weitere Konstrukte Nützliche Tipps 2 / 35 Inhalte dieser Veranstaltung

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Die Programmiersprache C

Die Programmiersprache C Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel. Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

(allgemeine) OOP in C++ Klassen und header-files Konstruktorn / Destruktoren Speicherverwaltung C++ Standard Library / SLT

(allgemeine) OOP in C++ Klassen und header-files Konstruktorn / Destruktoren Speicherverwaltung C++ Standard Library / SLT Architektur Übersicht (allgemeine) OOP in C++ Polymorphie Virtuelle Funktionen Kompilieren Linken dynamische/statische Bibliotheken Tutorial: vs2008+ogre+(campus modell) Architektur (allgemeine) OOP in

Mehr

C++ - Operatoren. Eigene Klassen mit neuen Funktionen

C++ - Operatoren. Eigene Klassen mit neuen Funktionen C++ - Operatoren Eigene Klassen mit neuen Funktionen Übersicht Klassen bisher Eigene Operatoren definieren 2 Bisher Durch Kapselung, Vererbung und Polymorphy können nun eigene Klassen definiert werden,

Mehr

Objektorientierte Programmierung mit C++ Vector und List

Objektorientierte Programmierung mit C++ Vector und List Vector und List Ziel, Inhalt Wir lernen die Klassen vector und list aus der Standard-C++ Library kennen und anwenden. In einer Übung wenden wir diese Klassen an um einen Medienshop (CD s und Bücher) zu

Mehr

Sprachvergleich C# / Java / C++

Sprachvergleich C# / Java / C++ Dieses Dokument vergleicht die Programmiersprachen C# in den Versionen 2.0 und 3.0 mit den Sprachen Java in der Version 6 und ANSI C++ ohne die jeweils vielfältigen Bibliotheken zu berücksichtigen. In

Mehr

Inhaltsverzeichnis. Kapitel 1: Die Shopgründung 7. Kapitel 2: Shopumgebung und Shopkonzept 31. Kapitel 3: Die Shopkonfiguration 59. Vorwort...

Inhaltsverzeichnis. Kapitel 1: Die Shopgründung 7. Kapitel 2: Shopumgebung und Shopkonzept 31. Kapitel 3: Die Shopkonfiguration 59. Vorwort... Inhaltsverzeichnis Inhaltsverzeichnis Vorwort...5 Kapitel 1: Die Shopgründung 7 1.1 Die Shopidee...8 1.2 Die Zielgruppe...9 1.3 Das Alleinstellungsmerkmal... 10 1.4 Die Marktanalyse... 12 1.5 Die persönliche

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

Zusammenfassung des Handzettels für Programmieren in C

Zusammenfassung des Handzettels für Programmieren in C Zusammenfassung des Handzettels für Programmieren in C In der handschriftlichen Kopie werden mehr Abkürzungen verwendet. Alles Grün markierte dient zum lernen und wird nicht auf den Handzettel übertragen.

Mehr

C++ Kurs Teil 1. Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen

C++ Kurs Teil 1. Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen C++ Kurs Teil 1 "hello world" Vergleich von C++ und Java Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen C++ Spezialitäten Schlüsselwort 'const', Copy Constructor,

Mehr

Programmieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff

Programmieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff Programmieren in C Macros, Funktionen und modulare Programmstruktur Prof. Dr. Nikolaus Wulff Der C Präprozessor Vor einem Compile Lauf werden alle Präprozessor Kommandos/Makros ausgewertet. Diese sind

Mehr

Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme

Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Teil 1: Wiederholung C Heutige Agenda Nutzereingaben verarbeiten Teil 2: Grundlagen in C++ Erstes

Mehr

Einführung in C++ mit Microsoft VS

Einführung in C++ mit Microsoft VS Einführung in C++ mit Microsoft VS Gliederung Allgemeines zu C++ und Unterschiede zu Java Header-Files Zeiger/Strukturen Namespaces Programmierstil Einführung in Microsoft VS Projekte und Solutions Debugger

Mehr

Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling

Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Input / Output in C, C++ Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Page 1 Ausgaben in C,C++ - generell Fuer C basierte Ausgaben:

Mehr

Einführung in die Programmiersprache C und in den C166-Compiler

Einführung in die Programmiersprache C und in den C166-Compiler Einführung in die Programmiersprache C und in den C166-Compiler Die vorliegenden Unterlagen sollen einen kurzen Überblick über die Software-Entwicklung in C geben. Diese Unterlagen erheben keinen Anspruch

Mehr

ISBN 978-3-8273-3181-6 (print); 978-3-86324-526-9 (PDF); 978-3-86324-209-1 (epub)

ISBN 978-3-8273-3181-6 (print); 978-3-86324-526-9 (PDF); 978-3-86324-209-1 (epub) Bibliografische Information Der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind

Mehr

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Compiler: Vom Code zum Maschinen-Code C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Zusammenhänge: C und Assembler Hochsprachen

Mehr

C-Programmierung unter TOS ATARI ST

C-Programmierung unter TOS ATARI ST Peter Rosenbeck C-Programmierung unter TOS ATARI ST Einführung in die Programmiersprache C Systemprogrammierung am Beispiel eines Diskettenmonitors Einsatz von BIOS-Routinen Software-Engineering - B I

Mehr

Objektorientierte Programmierung in Java

Objektorientierte Programmierung in Java Objektorientierte Programmierung in Java 1. Auflage Objektorientierte Programmierung in Java schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag C.H. Beck im Internet:

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Die Elemente der User Experience

Die Elemente der User Experience Die Elemente der User Experience Die Elemente der User Experience 2. Auflage Anwenderzentriertes (Web-)Design Jesse James Garrett Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche

Mehr

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 1: Grundlagen

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 1: Grundlagen C# Programmierung Eine Einführung in das.net Framework C# Programmierung - Tag 1: Grundlagen 1/27/2012 1 Vorstellung Kursleiter Florian Rappl 9 Jahre Erfahrung mit C# Ausbildung zum Fachinformatiker bei

Mehr

IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken

IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken Im Folgenden finden Sie jeweils die korrekte Antwort zu den im Buch abgedruckten Prüfungsfragen, soweit die Antworten in Textform

Mehr

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3. Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike

Mehr

Klausur C++ #1 Jahr: 2001; Dozent: Dipl.Ing. Sorber

Klausur C++ #1 Jahr: 2001; Dozent: Dipl.Ing. Sorber Klausur C++ #1 Jahr: 2001; Dozent: Dipl.Ing. Sorber 1) Welche Antworten zur Operatorüberladung sind richtig? (1) a) C++ - Operatoren können zusammen mit Objekten funktionieren b) C++ - Operatoren wird

Mehr

Modellierung und Programmierung

Modellierung und Programmierung Modellierung und Programmierung Dr. Martin Riplinger 19.12.2012 IAM Institut für Angewandte Mathematik Funktionszeiger: Vorüberlegungen Funktionsaufrufe sind bis jetzt im Code mit Name explizit angegeben

Mehr

Einführung in die STL anhand eines ausgewählten Beispiels

Einführung in die STL anhand eines ausgewählten Beispiels Einführung in die STL anhand eines ausgewählten Beispiels Frank M. Thiesing http://home.t-online.de/home/ frank.thiesing/stl/stl-folien.pdf Inhalt Überblick über die C++ STL Container Iteratoren Algorithmen

Mehr

<Trainingsinhalt> C# programmieren

<Trainingsinhalt> C# programmieren C# programmieren i training Inhaltsverzeichnis 1. Einführung in C#... 13 1.1 Das Ziel dieses Buches... 13 1.2 Grundsätzliches zur Sprache... 13 1.3 Programmiersprachen verstehen... 14

Mehr

Übersicht. Einführung in die Programmierung. main. main. main. main. Speicherverwaltung. Definition nach ANSI C:

Übersicht. Einführung in die Programmierung. main. main. main. main. Speicherverwaltung. Definition nach ANSI C: Übersicht Einführung in die Programmierung Bachelor of Science die -Funktion Prof. Dr. Rethmann Fachbereich Elektrotechnik und Informatik Hochschule Niederrhein WS 009/0 Einführung in die Programmierung

Mehr

Ein erstes Java-Programm

Ein erstes Java-Programm Ein erstes Java-Programm public class Rechnung { public static void main (String [] arguments) { int x, y; x = 10; y = -1 + 23 * 33 + 3 * 7 * (5 + 6); System.out.print ("Das Resultat ist "); System.out.println

Mehr

Programmieren von Webinformationssystemen

Programmieren von Webinformationssystemen Programmieren von Webinformationssystemen Wolfgang Gassler Databases and Information Systems (DBIS) Institute of Computer Science University of Innsbruck dbis-informatik.uibk.ac.at 1 HTML Hypertext Markup

Mehr

jetzt lerne ich Der einfache Einstieg in Object Pascal Für alle Versionen bis einschließlich Delphi 2006 THOMAS BINZINGER

jetzt lerne ich Der einfache Einstieg in Object Pascal Für alle Versionen bis einschließlich Delphi 2006 THOMAS BINZINGER Der einfache Einstieg in Object Pascal Für alle Versionen bis einschließlich Delphi 2006 THOMAS BINZINGER Inhaltsverzeichnis jetzt lerne ich Vorwort 15 1 Was ist Delphi? 17 1.1 Die Wurzeln von Delphi 17

Mehr

C Überlebenstraining

C Überlebenstraining C Überlebenstraining Dies ist nur ein Schnellkurs in C, der genug Einstiegswissen vermitteln soll, daß weiterführende Literatur schnell benutzt werden kann. Dies ist kein vollständiger Programmier oder

Mehr

Organisatorisches. Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg

Organisatorisches. Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg Organisatorisches Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Wenn Sie kommen...... kommen Sie pünktlich

Mehr

Alexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv

Alexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv Alexander Niemann Das Einsteigerseminar Objektorientierte Programmierung in Java G bhv Inhaltsverzeichnis Vorwort 11 Einleitung 13 Lernen - Üben 13 Über dieses Buch 14 Ш11ШШШШ '. ш Ш Java 19 Die Geschichte

Mehr

4.7.1 Intellisense... 42 4.7.2 Code Expansion... 43 4.7.3 Code Snippets... 43 4.7.4 Schriftgröße... 44 4.7.5 Event Handler... 44 4.7.

4.7.1 Intellisense... 42 4.7.2 Code Expansion... 43 4.7.3 Code Snippets... 43 4.7.4 Schriftgröße... 44 4.7.5 Event Handler... 44 4.7. Inhalt 1 Einleitung... 11 1.1 An wen richtet sich das Buch?... 11 1.2 Ziel... 11 1.3 1 = 2... 11 1.4 Voraussetzungen... 11 1.5 Was decken die einzelnen Kapitel ab?... 12 1.6 Was nicht enthalten ist...

Mehr

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter Dr. Wolfgang Süß Thorsten Schlachter Java-Bezeichner Für Variablen, Methoden, Klassen und Schnittstellen werden Bezeichner auch Identifizierer (von engl. identifier) genannt vergeben. Ein Bezeichner ist

Mehr

1. Der Einstieg in Java. Was heißt Programmieren?

1. Der Einstieg in Java. Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen und ausführen können, Möglichkeiten der Kommentierung

Mehr

Objektorientierung: Klassen und Objekte

Objektorientierung: Klassen und Objekte Objektorientierung: Klassen und Objekte Klasse: Beschreibung für eine Menge von Objekten Schablone, Bauplan abstrakte Form Objekt: Instanz einer Klasse konkreter Inhalt (Werte) Klassen bestehen aus Attributen

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - ! 1. Grundelemente der Programmierung! 2. Objekte, Klassen und Methoden! 3. Rekursion und dynamische Datenstrukturen! 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1

Mehr

Klassenbeziehungen & Vererbung

Klassenbeziehungen & Vererbung Klassenbeziehungen & Vererbung VL Objektorientierte Programmierung Raimund Kirner teilweise nach Folien von Franz Puntigam, TU Wien Überblick Arten von Klassenbeziehungen Untertypen versus Vererbung in

Mehr

C++ - Funktionen und mehr. Kerstin Gößner und Ralf Wondratschek

C++ - Funktionen und mehr. Kerstin Gößner und Ralf Wondratschek C++ - Funktionen und mehr Kerstin Gößner und Ralf Wondratschek Übersicht Deklaration, Definition und Initialisierung Variablen- und Konstantendeklaration Funktionsaufrufe und rückgabewerte Technische Grundlage

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16 Kapitel 5 Arithmetische Operatoren Seite 1 von 16 Arithmetische Operatoren - Man unterscheidet unäre und binäre Operatoren. - Je nachdem, ob sie auf einen Operanden wirken, oder eine Verknüpfung zweier

Mehr

http://mindview.net/books/ticpp/thinkingincpp2e.html

http://mindview.net/books/ticpp/thinkingincpp2e.html Einführung in C++ Java Client Server Meilenstein 5 Meilenstein 5, Ort Biozentrum BZ 103 Mittwoch 08.06: Gruppe 1-4 Donnerstag 09.06 Gruppe 5-8 Jeweils 20 Minuten pro Gruppe (15 min Präsentation / 5 min

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 10. Juli 2007 Fortgeschrittene Template-Techniken C++ bietet eine Vielfalt weiterer Techniken für Templates: Templates

Mehr

Kapitel 4: Lexikalische Syntax

Kapitel 4: Lexikalische Syntax 4. Lexikalische Syntax 4-1 Objektorientierte Programmierung (Winter 2010/2011) Kapitel 4: Lexikalische Syntax Compiler, Phasen, Scanner vs. Parser Leerplatz, Kommentare Bezeichner, Schlüsselworte Konstanten/Literale

Mehr

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003 Test zu Grundlagen der Programmierung Leitung: Michael Hahsler 1. November 00 Name Martrikelnummer Unterschrift Bitte kreuzen Sie das Studium an, für das Sie diese Prüfung ablegen: O Bakkalaureat Wirtschaftsinformatik

Mehr

Numerische Datentypen. Simon Weidmann

Numerische Datentypen. Simon Weidmann Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 4 Informationsverarbeitung im Bauwesen Markus Uhlmann basierend auf Folien von A. Brugger 1 Zusammenfassung der 3. Vorlesung Einführung in Excel/VBA Einführung in die Tabellenkalkulation Erste Schritte

Mehr

ebook-pdf-isbn: 978-3-86325-604-3 - Printausgabe ISBN 978-3-8272-4826-8

ebook-pdf-isbn: 978-3-86325-604-3 - Printausgabe ISBN 978-3-8272-4826-8 Bibliografi sche Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografi e; detaillierte bibliografi sche Daten sind

Mehr

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik Informatik I WS 2012/13 Tutorium zur Vorlesung 1. Alexander Zietlow zietlow@informatik.uni-tuebingen.de Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung Bearbeitet von Dietmar Ratz, Jens Scheffler, Detlef Seese 1. Auflage 2001. Taschenbuch. 463 S. Paperback ISBN

Mehr

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean 01.11.05 1 Noch für heute: 01.11.05 3 primitie Datentypen in JAVA Primitie Datentypen Pseudocode Name Speichergröße Wertgrenzen boolean 1 Byte false true char 2 Byte 0 65535 byte 1 Byte 128 127 short 2

Mehr

Meeting C++ C++11 R-Value Referenzen

Meeting C++ C++11 R-Value Referenzen Meeting C++ Detlef Wilkening http://www.wilkening-online.de 09.11.2012 Inhalt Motivation L-Values und R-Values R-Value Referenzen Move Semantik std::move Funktionen mit R-Value-Referenz Parametern Fazit

Mehr

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32 Steueranweisungen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder Programmblöcken)

Mehr

Sebastian Houben Intensivkurs C++ 1. Intensivkurs C++ 21. September 2015

Sebastian Houben Intensivkurs C++ 1. Intensivkurs C++ 21. September 2015 Sebastian Houben Intensivkurs C++ 1 Intensivkurs C++ 21. September 2015 Themen Sebastian Houben Intensivkurs C++ 2 Warum C++? Ziel dieses Kurses Voraussetzungen Verwandschaft zu C, Java und anderen Sprachen

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT

MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 Datendefinitionen b) Unterteilung nach Typen: (Teil 2) void leer Pointer 2/4 Bytes Adresse von Objekten Arrays bei allen Datentypen

Mehr

Android will doch nur spielen. Java Eine kurze Einführung

Android will doch nur spielen. Java Eine kurze Einführung Android will doch nur spielen Java Eine kurze Einführung Agenda Einführung in Java Syntax und Semantik Komplexe Datenstrukturen OOP Weitere Java-Elemente 2 Einführung in Java Was ist Java? lt. Sun: einfach

Mehr

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer)

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer) Programmieren I Grundlagen von JAVA Dr. Klaus Höppner Hello World in JAVA Hochschule Darmstadt WS 2007/2008 Elementare Datentypen 1 / 17 2 / 17 Eigenschaften von JAVA Prinzipieller Ablauf Plattform-und

Mehr

Programmieren in C++ Arrays, Strings und Zeigerarithmetik

Programmieren in C++ Arrays, Strings und Zeigerarithmetik Programmieren in C++ Arrays, Strings und Zeigerarithmetik Inhalt Eindimensionale C-Arrays C-Strings und Strings (Mehrdimensionale C-Arrays) Arrays und Vektoren (C++) Unique Pointers (C++11) Zeigerarithmetik

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS2013/14 Inhalt Übung(Aufklärung) Vererbung(wdh.) Initilisierung bei Vererbung

Mehr

ISBN 978-3-8273-3232-5 (Print); 978-3-86324-685-3 (PDF); 978-3-86324-250-3 (epub)

ISBN 978-3-8273-3232-5 (Print); 978-3-86324-685-3 (PDF); 978-3-86324-250-3 (epub) Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind

Mehr