1. Vom Sourcecode zum Programm
|
|
|
- Gert Maus
- vor 9 Jahren
- Abrufe
Transkript
1 1. Vom Sourcecode zum Programm 1.1 Programmablauf source1.cpp source2.cpp header.h makefile Compiler Präprozessor Übersetzer Assembler object.obj object.obj Linker library.dll programm.exe Abbildung: Erstellung eines ausführbaren Programms Seite 1 von 7
2 Werkzeug Editor Compiler Linker zum Schreiben von Text. ist in einer Entwicklungsumgebung enthalten Präprozessor stellt den vollständigen Quellcode auf Textebene zusammen. verarbeitet Anweisungen, die mit einem # beginnen. sucht und ersetzt Text. Übersetzer (Compiler) erzeugt Assemblercode, der von Menschen gelesen werden kann. Assembler erzeugt aus den Assemblercode Objektcode (Maschinencode). Der Code besteht aus 0 und 1. Maschinencode kann mit einem Hex-Editor gelesen werden. verbindet alle Objektdateien und Bibliotheken zu einer ausführbaren Datei. Werkzeug Editor erstellt Quelldatei (.cpp) Source. Ein Programm, welches mit einer bestimmten Sprache (hier C++) geschrieben ist. Header-Datei (.h) Enthält Deklarationen von Funktionen und Variablen, die in verschiedenen Quelldateien genutzt werden. Compiler: Präprozessor Seite 2 von 7
3 Werkzeug Übersetzer erstellt Assembler Linker Objektdatei (.obj) Ausführbares Programm (.exe) besteht aus Maschinencode. ist abhängig von der genutzten Programmiersprache, Compiler und dem Rechner, auf dem das Programm übersetzt wurde. 1.2 makefile Der Befehl make und die Datei makefile stammen aus der Unix-Welt und werden in der Software-Entwicklung eingesetzt. Die Datei makefile beschreibt mit einer Skript-ähnlichen Sprache Abhängigkeiten zwischen den einzelnen Dateien eines Projekts. Dateien eines Projekts werden mit Hilfe eines makefiles überwacht. Mit Hilfe des Befehls make wird die Datei makefile ausgeführt. Ein einfaches makefile kann folgendermaßen aussehen: mymain.o : mymain.cpp g++ -c mymain.cpp Der Befehl make weiß aufgrund dieser Zeilen, dass er nach einer Datei mit dem Namen mymain.cpp schauen muss. Aus dieser Datei wird mit Hilfe des Kommandos g++ -c mymain.cpp die Datei mymain.o generiert. Das makefile enthält eine Regel, die eine Aussage über die Erstellung einer Objektdatei aus einer Quelldatei trifft. Seite 3 von 7
4 Eine Regel in einem makefile hat folgendes Aussehen: Ziel : Abhängigkeit Kommando Ziel ist ein Synonym für die Datei, die erstellt werden soll. In derselben Zeile stehen, durch einen Doppelpunkt getrennt, die Abhängigkeiten. Die Abhängigkeiten bezeichnen alle Dateien, die benötigt werden, um das Ziel zu generieren. Das Kommando beschreibt eine Aktion, die die Abhängigkeiten verarbeitet und das Ziel erstellt. Das Kommando wird mit Hilfe des Tabulators und nicht mit Leerzeichen eingerückt! Die Erstellung eines Ziels kann mehr als eine Abhängigkeit haben. Die einzelnen Dateien, die benötigt werden, sind durch Leerzeichen getrennt. myprogramm : mymain.o myausgabe.o g++ mymain.o myausgabe.0 o myprogramm myprogramm ist von den Objektdateien mymain und myausgabe abhängig. Abhängigkeiten können in einem makefile auch mehrstufig sein. myprogramm : mymain.o myausgabe.o g++ mymain.o myausgabe.0 o myprogramm myausgabe.o : myausgabe.c g++ -c myausgabe.c mymain.o : mymain.c g++ -c mymain.c Wenn der Befehl make myprogramm aufgerufen wird, werden zuerst die Objektdateien aus den Quelldateien generiert. Anschließend wird aus den Objektdateien myprogramm erzeugt. Wenn das Ziel ein jüngeres Datum hat als ihre Abhängigkeiten, wird make nicht gestartet. Beispiel: Das Ziel myprogramm wurde letztmalig am generiert. Der Programmier verändert die Datei mymain.cpp am und speichert diese ab. Nach der Änderung der Quelldatei wird make gestartet und ausgeführt, da das Ziel älter ist als die Abhängigkeit. Mit Hilfe des Befehls make können auch Dateien gelöscht werden. clean: rm *.obj core rm ist ein Befehl zum Löschen von Dateien. Hier werden alle Objektdateien und Dateien, die bei einem Programmabsturz erzeugt werden, gelöscht. Das Ziel clean wird auch als Pseudo-Ziel bezeichnet. Es besitzt keine Abhängigkeiten und wird nie erzeugt. Um ein Projekt vollständig zu kompilieren, kann folgende Regel genutzt werden. all : mymain.o g++ -o mymain.exe mymain.o Seite 4 von 7
5 Kommentare beginnen in einem makefile mit einem Hash. # Compilieren des Programms Hello World all : mymain.o g++ -o mymain.exe mymain.o mymain.o : mymain.cpp g++ -c mymain.cpp Weitere Informationen können Sie unter finden. 1.3 Header-Dateien Header-Dateien sind Sammlungen von Variablen, Datenstrukturen und Deklarationen von Funktionen zu einem bestimmten Thema. Zum Beispiel die Header-Datei <iostream> enthält Deklarationen von Funktionen und globale Variablen für die Ein- und Ausgabe. Header-Dateien in C++ haben immer die Dateiendung.h. Folgende Beispiele sind gültige Namen für Header-Dateien: kreis.h berechnung_flaeche. myprogramm.revision_1.h Header-Dateien enthalten alle Definitionen von Variablen, Konstanten, Datentypen und strukturen, Deklarationen von Funktionen und Klassen und alle Programmteile, die der Präprozessor wie Text ersetzen kann. Die Definition und Deklarationen in einer Header-Datei werden von vielen verschiedenen Quelldateien benötigt. HeaderDateien enthalten keinen Code, der kompiliert werden muss. keine Variablen, Konstanten, Datentypen und strukturen, die nicht global genutzt werden. Seite 5 von 7
6 Header-Dateien haben einen bestimmten Aufbau: Header-Datei myheader.h #ifndef myheader #define myheader // Kommentar: Dateiname und Aufgabe // Erstellungsdatum // Version // Revision // Compilerschalter #define WINDOWS #undef MSDOS // Include-Dateien #include <iostream> #include "myausgabe.h" // Symbolische Konstanten #define TRUE 1 // Makros #define MIN(zahlA, zahlb) ((a) < (b)? (a) : (b)) // Globale Konstanten const double max = 100; // Datenstrukturen und Typvereinbarungen typedef float Flaeche; // Globale Variablen extern int mass; // Deklarationen von Funktion double flaeche (float breite, float hoehe); Mit Hilfe des Codes #ifndef myheader #define myheader wird überprüft, ob der Präprozessor die Header-Datei schon eingebunden hat oder nicht. Wenn die Header-Datei das erste Mal aufgerufen wird, wird die Konstante myheader definiert und alle nachfolgenden Zeilen ausgeführt. Wenn die Header-Datei nochmals aufgerufen wird, wird die Einbindung durch die Anweisung ifndef (falls nicht definiert) verhindert. Seite 6 von 7
7 Beispiel für Klassenmodule: rect.h // Vermeidung von // rekursiven Aufrufen #ifndef RECHTECK_H #define RECHTECK_H // Ein Byte ist immer ein Char typedef unsigned char BYTE; // RGB-Farben als Struktur struct Color{ BYTE red; BYTE green; BYTE blue; // Definition der Klasse Rechteck class Rect{ private: short xpos, ypos; short breite, hoehe; Color rectfarbe; public: void Init(short x, short y, short width, short height); void Move(short x, short y); void Resize(short width, short heigth); void SetColor(BYTE r, BYTE g, BYTE b); void DrawRect(); rect.cpp using namespace std; #include <iostream> // Klassendefinition einbinden #include "rect.h" void Rect::Init(short x, short y, short width, short height){ xpos = x; ypos = y; hoehe = height; breite = width; rectfarbe.red = 0x00; rectfarbe.green = 0x00; rectfarbe.blue = 0x00; void Rect::Move(short x, short y){ xpos = x; ypos = y; void Rect::Resize(short width, short heigth){ void Rect::SetColor(BYTE r, BYTE g, BYTE b){ void Rect::DrawRect(){ Globale Variablen in Header-Dateien verletzen das Prinzip information hiding und sollten vermieden werden. Falls globale Variablen nötig sein sollten, ist in der Header- Datei nur ein Verweis auf die Variable vorhanden. Die globale Variable wird aber in der dazu gehörigen Quelldatei definiert. globaldaten.h // Vermeidung von // rekursiven Aufrufen #ifndef GLOBALDATEN_H #define GLOBALDATEN_H extern int nummer[50]; extern int feldzeiger: globaldaten.cpp int nummer[50] = {0 int feldzeiger = 0; Seite 7 von 7
Programmierung mit C Modularisierung von Programmen. Präprozessor-Anweisungen nutzen.
Programmierung mit C Modularisierung von Programmen. Präprozessor-Anweisungen nutzen. Modularisierung Zerlegung eines Programms in überschaubare Einheiten Die einzelnen Einheiten werden als Modul bezeichnet.
C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung
Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29
Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente
Programmentwicklung mit C++ (unter Unix/Linux)
Programmentwicklung mit C++ (unter Unix/Linux) Erste Schritte Der gcc - Compiler & Linker Organisation des Source-Codes & Libraries Automatische Programmgenerierung: Make Birgit Möller & Denis Williams
Pseudo-Programmiersprache
1 Erste Schritte in C++ 4 Beschreibungsmöglichkeiten für Algorithmen Struktogramm Das gezeigte Struktogramm enthält die elementaren Grundstrukturen Folge, Auswahl und Schleife. Diese werden in einem der
Compiler Präprozessor Header Files
Freitagsrunde C-Kurs 2013 Compiler Präprozessor Header Files Tutorium 3 This work is licensed under a Creative Commons Attribution NonCommercial ShareAlike 3.0 License Gliederung Compiler Präprozessor
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
Unterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
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).
Hello World! Eine Einführung in das Programmieren Das erste Programm
Hello World! Eine Einführung in das Programmieren Das erste Programm Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Betriebssystem Funktion Anwendung Gerätesteuerung
Compiler Präprozessor Header Files
Freitagsrunde C-Kurs 2012 Compiler Präprozessor Header Files Tutorium 3 ThisworkislicensedunderaCreativeCommonsAttribution NonCommercial ShareAlike3.0License Gliederung Compiler Präprozessor Header Files
Mapra: C++ Teil 3. Felix Gruber. 29. April IGPM, RWTH Aachen. Felix Gruber (IGPM, RWTH Aachen) Mapra: C++ Teil 3 29.
Mapra: C++ Teil 3 Felix Gruber IGPM, RWTH Aachen 29. April 2015 Felix Gruber (IGPM, RWTH Aachen) Mapra: C++ Teil 3 29. April 2015 1 / 11 Themen vom letzten Mal Debuggen mit gdb Zusammengesetzte Datentypen
FACHHOCHSCHULE MANNHEIM
für Java-Programmierer Der Präprozessor Prof. Dr. Wolfgang Schramm FACHHOCHSCHULE MANNHEIM Hochschule für Technik und Gestaltung Präprozessor Ist dem Compiler vorgeschaltet ( Prä -). Spezielle Anweisungen
Kurzeinführung in C/C++ Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Einleitung
Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ 1 Einleitung Vorteile von Java: gut strukturiert mit hohem Funktionsumfang (mächtige Standardbibliothek) weitestgehend
Übersicht. C Modularisierung. Präprozessor, Compiler, Linker. Präprozessor, Compiler, Linker. Präprozessor, Compiler und und Linker Linker
Übersicht Präprozessor, Compiler und und Linker Linker Befehle des Präprozessors C Modularisierung Bedingte Kompilierung Modulare Programmierung Prinzipien der Modularisierung 1 2 Präprozessor, Compiler,
Grundlagen der Informatik Vorlesungsskript
Grundlagen der Informatik Vorlesungsskript Prof. Dr. T. Gervens, Prof. Dr.-Ing. B. Lang, Prof. Dr. F.M. Thiesing, Prof. Dr.-Ing. C. Westerkamp 16 AUTOMATISCHES ÜBERSETZEN VON PROGRAMMEN MIT MAKE... 2 16.1
Vorlesung Informatik I
Vorlesung Informatik I Universität Augsburg Wintersemester 2010/2011 Prof. Dr. Robert Lorenz Lehrprofessur für Informatik Programmieren in C Der Compilierungsprozess 1 Aufbau eines C-Programms 1. Direktiven
Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme
Grundkurs C++ Buildsysteme Buildsysteme Beispielhaftes Übersetzungsszenario: Verzeichnis tutorial7/ main.cpp, lcdrange.cpp, lcdrange.h *.cpp Kompilieren *.o *.h Grundkurs C++ 2 Headerdateien //blackbox.h
Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Für eine
8.1 Vom Quellcode zur ausführbaren Programm
8. Die Umgebung von C- 8.1 Vom Quellcode zur Programmausführung 8.2 Präprozessor-Anweisungen 8.3 Compiler, Assembler, Binder 8.4 Das Make-Utility 8.5 Datenübergabe vom und zum Betriebssystem 8-1 8.1 Vom
Vorlesung Informatik I
Vorlesung Informatik I Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 11. Programmieren in C Der Compilierungsprozess 1 Aufbau eines C-Programms 1. Direktiven
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
Praktikumstermin B-07: make & Makefiles
Praktikumstermin B-07: make & Makefiles Version 2014-11-26: Problem mit dem Löschbefehl gelöst. Ursache: Auf den Terminalrechnern funkt ein Softwarepaket aus einer anderen Lehrveranstaltung dazwischen
Der Goopax Compiler GPU-Programmierung in C++ ZKI AK-Supercomputing, Münster, 27.03.2014, Ingo Josopait
Der Goopax Compiler GPU-Programmierung in C++ AMD R9 290X: 5.6 TFLOPS (SP MulAdd) Programmierung ~10000 Threads Entwicklungsumgebungen Entwicklungsumgebungen CUDA, OpenCL Compiler: kernel GPU Maschinencode
Propädeutikum. Dipl.-Inf. Frank Güttler
Propädeutikum 2015 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) [email protected] Universität Leipzig Institut für Informatik Technische Informatik
Übungsblatt 1. Java Vorkurs (WS 2017)
Übungsblatt 1 Java Vorkurs (WS 2017) Aufgabe 1 Hallo-Welt Erstelle ein neues Projekt mit dem Namen HelloJava. Erzeuge in diesem Projekt eine neue Klasse HelloJava. (a) Schreibe die main-methode in die
Einführung in C ++ und die Objektorientierte Programierung
1/38 Einführung in C ++ und die Objektorientierte Programierung Florian Adamsky, B. Sc. (PhD cand.) [email protected] http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/38 Outline
U1 3. Übung U1 3. Übung. Die Kommandos auf den folgenden Folien dienen der Veranschaulichung. Sind nicht direkt auf die Übungsaufgabe übertragbar
U1 3. Übung U1 3. Übung Besprechung Aufgabe 0 Make und Makefiles Aufgabe 2 U1-1 Hinweise Die Kommandos auf den folgenden Folien dienen der Veranschaulichung Sind nicht direkt auf die Übungsaufgabe übertragbar
SimpleStat mit Methoden
SimpleStat mit Methoden Als Ausgangspunkt nehmen wir folgende Definition (Version 1) von SimpleStat: double sum2; -Quadrate Dieser Objekttyp verfügt über keine Methoden und alle Datenattribute sind public.
Modulare Programmierung und Bibliotheken
Modulare Programmierung und Bibliotheken Proseminar-Vortrag am 24.06.2011 von Ludwig Eisenblätter Ludwig Eisenblätter 1 von 25 Modulare Programmierung und Bibliotheken Inhaltsübersicht Motivation / Einleitung
Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 1 SS 2016
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
Grundkurs C++ Buildsysteme Versionsverwaltung mit git
Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp, Martin Gottwald, Stefan Röhrl 25.04.2018 Folie 1/21 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp, Martin Gottwald, Stefan Röhrl
Programmieren in C++ Templates
Programmieren in C++ Templates Inhalt Templates Funktions- und Klassen-Templates Spezialisierung von Templates Generische Klassen Einbinden von Templates Instantiierung (implizit und explizit) Templates
Grundkurs C++ Buildsysteme Versionsverwaltung mit git
Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp 09.05.2017 Folie 1/1 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp 09.05.2017 Buildsysteme Beispielhaftes Übersetzungsszenario:
Grundstruktur eines C-Programms
Grundstruktur eines C-Programms // Kommentare werden durch zwei Schrägstriche (Slash) eingeleitet /* Oder durch Slash Stern Stern Slash eingeschlossen */ #include // Präprozessor-Anweisungen
Quiz und Übungen. C++ Übung am 19. Mai 2016
Quiz und Übungen C++ Übung am 19. Mai 2016 Was ist der Unterschied zwischen kompilierenden und interpretierenden Programmiersprachen? Was ist der Unterschied zwischen kompilierenden und interpretierenden
Grundlagen von C# - 1
Grundlagen von C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Über diesen Kurs 2. Benötigte Software 3. Exkurs: Architektur von.net und C# 4. Erstes Programm: Hello World Grundlegende Eigenschaften
Grundkurs C++ Buildsysteme Versionsverwaltung mit git
Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp & Johannes Feldmaier 20.04.2016 Folie 1/22 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp & Johannes Feldmaier 20.04.2016 Buildsysteme
Institut für Programmierung und Reaktive Systeme. Java 1. Markus Reschke
Java 1 Markus Reschke 06.10.2014 Überblick Einführung in die Programmierung zur Vereinfachung des Einstiegs ins Studium Erstellung von ausführbaren Programmen für den Computer Denk- und Vorgehensweisen
Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff
Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen
Zum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans...
Erste Schritte Dieser Teil der Veranstaltung gibt einen ersten Eindruck der Programmierung mit C++. Es wird ein erstes Gefühl von Programmiersprachen vermittelt, ohne auf die gezeigten Bestandteile genau
Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden
Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter
7.2 Dynamischer Speicher in Objekten/Kopierkonstruktor
7.2 Dynamischer Speicher in Objekten/Kopierkonstruktor Das Programmbeispiel aus dem letzten Abschnitt läßt sich bisher nicht zufriedenstellend zu Ende bringen. Unerklärliche Abstürze und Fehlverhalten
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
Vorkurs Informatik WiSe 16/17
Java Einführung Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 04.10.2016 Technische Universität Braunschweig, IPS Überblick Organisatorisches Hello! 04.10.2016 Dr. Werner Struckmann / Stephan Mielke,
C-Propädeutikum Funktionen
C-Propädeutikum Funktionen Dipl.-Inf. Stefan Freitag [email protected] Universitätsrechenzentrum Universitätsbibliothek Universität Leipzig basiert auf den Originalfolien von Jörn Hoffmann Wiederholung
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,
Crashkurs C++ Wiederholung
Crashkurs C++ Wiederholung #include int main(void) { int i, j; bool is_prime; for (j = 1; j < 1000; j += 2) { is_prime = true; for (i = 3; i
7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt
7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Kontrollfragen Rekursion Was bedeutet Rekursion? Geben Sie Beispiele
Von Java nach C++ Dr. Frank Weichert Lehrstuhl Informatik VII Technische Universität Dortmund http://ls7-www.cs.uni-dortmund.de
Von Java nach C++ Dr. Frank Weichert Lehrstuhl Informatik VII Technische Universität Dortmund http://ls7-www.cs.uni-.de Von Java nach C++, Lehrstuhl Informatik VII, TU Dortmund 1 Übersicht Einleitung Literatur
Algorithmen zur Datenanalyse in C++
Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in
Von Java nach C++ Frank Weichert, Heinrich Müller Informatik VII Universität Dortmund http://ls7-www.cs.uni-dortmund.de
Von Java nach C++ Frank Weichert, Heinrich Müller Informatik VII Universität Dortmund http://ls7-www.cs.uni-dortmund.de Von Java nach C++, LS VII, Universität Dortmund, SS 2006 1 Übersicht Einleitung Literatur
Martin Unold INFORMATIK. Geoinformatik und Vermessung
Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen
U4 Grundlagen der C-Programmierung
U4 Grundlagen der C-Programmierung U4 Grundlagen der C-Programmierung Makros Enums und Typedefs Deklaration und Definition Compileroptimierungen U4-1 Makros U4-1 Makros Makros sind Textersetzungen, welche
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,
Einführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
Dr. Monika Meiler. Inhalt
Inhalt 11 Dynamische Feldvereinbarung... 11-2 11.1 Dynamische Vereinbarung von Vektoren... 11-3 11.2 Dynamische Vereinbarung von Matrizen... 11-5 11.3 Die Kommandozeile... 11-8 Propädeutikum 11-1/8 11
Grundlagen der Programmentwicklung
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling [email protected] Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Über C++ Über C++ C++ ist eine in der Industrie
Funktionales C++ zum Ersten
Funktionales C++ zum Ersten WiMa-Praktikum 1, Teil C++, Tag 1 Christoph Ott, Büro: Helmholtzstr.18, E22 Tel.: 50-23575, Mail: [email protected] Institut für Angewandte Informationsverarbeitung 26.08.08
Praktische Informatik 1
Praktische Informatik 1 Imperative Programmierung und Objektorientierung Karsten Hölscher und Jan Peleska Wintersemester 2011/2012 Session 2 Programmierung Begriffe C/C++ Compiler: übersetzt Quellcode
Vorkurs Informatik WiSe 17/18
Java Einführung Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 04.10.2017 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello World 04.10.2017 Dr. Werner Struckmann
Propädeutikum. Dipl.-Inf. Frank Güttler
Propädeutikum 2015 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) [email protected] Universität Leipzig Institut für Informatik Technische Informatik
C++ - Variablen: Gültigkeit - Sichtbarkeit
C++ - Variablen: Gültigkeit - Sichtbarkeit Reiner Nitsch 8417 [email protected] Attribute von Variablen und Funktionen Attribute von Variablen sind Name (name), Typ (type), Wert (value) Attribute von
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
Objektorientierung Grundlagen
Prof. Dr.-Ing. Andreas Simon Telefon +49 (0)5331 939 42630 Telefax +49 (0)5331 939 43634 E-Mail [email protected] Objektorientierung Grundlagen Probeklausur 18. Mai 2015 Name: Mat.-Nr.: Vorname: Login:
Programmierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
Thema heute: Vererbung und Klassenhierarchien. Abgeleitete Klassen. Vererbung von Daten und Funktionen. Virtuelle Funktionen
1 Thema heute: Vererbung und Klassenhierarchien Abgeleitete Klassen Vererbung von Daten und Funktionen Virtuelle Funktionen 2 Vererbung oft besitzen verschiedene Datentypen einen gemeinsamen Kern Beispiel:
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
Compiler und Präprozessor (1) Erstellen eines Projektes
Compiler und Präprozessor (1) Erstellen eines Projektes Projekte bestehen meist aus mehreren Dateien, z.b. Quelldateien, Funktionssammlungen in Bibliotheken Zur Definition eines Projektes sind folgende
Informatik I (D-ITET)
Die Übungsstunde Informatik I (D-ITET) Übungsstunde 1, 21.9.2008 [email protected] ETH Zürich Administratives Abgabe der Übungen (allein oder zu zweit) Eine Übungsabgabe pro Kopf (Team vermerken)
C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren
C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue
Informatik I (D-MAVT)
Informatik I (D-MAVT) Übungsstunde 1 [email protected] Distributed Systems Group, ETH Zürich kurze Stunden mit Stoffueberblick -> mehr Zeit fuer Fragen This semester s menu... Imperative Programmierung
Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe
Aufgabenstellung Für eine Hausverwaltung sollen für maximal 500 Wohnungen Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Art Baujahr Wohnung Whnginfo Nebenkosten
Programmiersprachen Einführung in C
Programmiersprachen Einführung Teil 3: Prof. Dr. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen 3.
Einführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
Ein kleiner Blick auf die generische Programmierung
TgZero Technik.Blosbasis.net June 3, 2013 1 Inhaltsverzeichnis 1 Vorwort 3 2 Ein kleines Beispiel 3 3 Templates 3 4 Verschiedene Datentypen 4 5 Variadic Templates 5 6 Unterschied zwischen den Programmiersprachen
