Informatik 1 ( ) D-MAVT F2011. Pointer, Structs. Yves Brise Übungsstunde 6

Größe: px
Ab Seite anzeigen:

Download "Informatik 1 ( ) D-MAVT F2011. Pointer, Structs. Yves Brise Übungsstunde 6"

Transkript

1 Informatik 1 ( ) D-MAVT F2011 Pointer, Structs

2 Organisatorisches Übungsstunde Da ich abwesend bin, bitte Gruppe von David Tschirky besuchen. Mittwoch, , 13:15-15:00 Uhr, VAW B1 Übungen bei mir abgeben! C++ Cheatsheet Sammlung der wichtigsten Befehle/Themen...

3 Prüfung Statische vs. Dynamische Allozierung int n; std::cin >> n; char c[n];... ist laut Standard nicht erlaubt. Besser: char* c = new char[n];... delete[] c; Grundsätzlich: Nach Standard! Sonst nicht portabel. Prüfung: Es wird explizit erwähnt, sonst beides akzeptiert.

4 Nachbesprechung Blatt 5 Aufgabe 1a) Kumulative Summe int A[] = {5, 2, 1, 3, 1, 4, 0; for (int i = 1; i < 6; ++i) { A[i] += A[i-1]; Aufgabe 4 Verschlüsselung, siehe Mulö...

5 Nachbesprechung Blatt 4 Aufgabe 3 Lösungsvorschlag 1 int n = 10; // Laenge char c; for (int i = 0; i < n; ++i) { do { c = rand() % ; while (( A >c c> Z ) && ( 0 >c c> 9 )); std::cout << c; Problem: Die Funktion rand wird öfter als notwendig aufgerufen.

6 Nachbesprechung Blatt 4 Aufgabe 3 Lösungsvorschlag II int n = 10; // Laenge char c; for (int i = 0; i < n; ++i) { int x = rand() % 2; switch(x) { case 0: c = rand() % ; break; // A-Z case 1: c = rand() % ; break; // 0-9 std::cout << c; Problem: Ziffern haben eine höhere Wahrscheinlichkeit gewählt zu werden als Buchstaben.

7 Nachbesprechung Blatt 4 Aufgabe 3 Lösungsvorschlag III int n = 10; // Laenge for (int i = 0; i < n; ++i) { int x = rand() % ; // 0-Z if (x > 57 && x < 65) // nicht in 0-9 oder A-Z x += 7; std::cout << char(x); Problem: Die 7 Buchstaben A-G (65-71) haben eine höhere Wahrscheinlichkeit gewählt zu werden.

8 Nachbesprechung Blatt 4 Aufgabe 3 Lösungsvorschlag IV int n = 10; // Laenge for (int i = 0; i < n; ++i) { int x = rand() % 36; // 36 gültige Zeichen if (x < 10) x += 48; // 0-9 else x += 65-10; // A-Z std::cout << char(x); Problem: Schwierig zu unterhalten und abzuändern.

9 Nachbesprechung Blatt 4 Aufgabe 3 Lösungsvorschlag V int n = 10; // Laenge char z[] = ABCDEFGHIJKLMNOPQRSTUVWXYZ ; for (int i = 0; i < n; ++i) { std::cout << z[rand() % 36]; Problem: Nur praktikabel, wenn die Anzahl der gültigen Zeichen überschaubar ist. Fazit Programmieren ist in den seltensten Fällen eine exakte Wissenschaft. Es gilt immer Vor- und Nachteile einer Methode abzuwägen.

10 sizeof Operator int n = 10; // Laenge char z[] = ABCDEFGHIJKLMNOPQRSTUVWXYZ ; for (int i = 0; i < n; ++i) { std::cout << z[rand() % sizeof(z)]; sizeof gibt die Grösse einer Variablen in Bytes im Speicher zurück. Vorsicht: \0 Zeichen nicht vergessen. sizeof(z) ist um eines grösser Funktioniert nur mit char std::cout << z[rand() % (sizeof(z)/sizeof(char)-1)];

11 Pointer T* a; a ist vom Typ Zeiger auf ein Objekt vom Typ T Dynamische Speicherallozierung, Datenstrukturen, Call by reference Mit new (new[]) erhaltener Speicher muss mit delete (delete[]) wieder freigegeben werden (sonst Memory Leak). Initialisierung mit Null, z.b. int* a = 0; const int* a vs. int * const b vs. int const* c vs. const int* const d Pointer Arithmetik (letztes Mal) Zeiger (rvalue) Dereferenzierung (*) Addressoperator (&) Objekt (lvalue)

12 Stack und Heap Speicher Heap int* i = new int(1); Object* o = new... Stack int i; Object o; Static Data Code Stack (Stapelspeicher) Automatische Verwaltung, getrieben von den Funktionsaufrufen. Sobald ein Objekt seinen Gültigkeitsbereich verlässt, kann der Speicher freigegeben werden. Last In First Out (LIFO) Vorteile: sehr schnelle Speicherreservierung, keine Memory Leaks. Nachteile: Grösse begrenzt Heap (Haldenspeicher) Verwaltung durch den Programmierer. Speicher kann angefordert werden und muss selbstständig wieder frei gegeben werden. Operatoren new und delete. Vorteile: grosse Objekte möglich, Speicherdauer Nachteile: langsamer, Gefahr von Memory Leaks Yves Brise Übungsstunde 5

13 Blatt 6, Aufgabe 1 Dereferenzierung Pointer-Initialisierung Pointer-Arithmetik int main () { int a[] = {2,4,3,1,5,0; int *p = a; do{ cout << *p << endl; p = a + p[0]; while (p!= a);! return 0; Pointer-Vergleich Element-Zugriff

14 Blatt 6, Aufgabe 3 Pointer und normale Variablen int** ipp_b; BTW: Ungarische Notation int* ip_a; point* tmp; n_global 19 n_lokal undefiniert red... green 0.75f i_global 127 blue f {0,255,0

15 Blatt 6, Aufgabe 3 Lösungsstruktur a) ip_a: Zeiger auf n_lokal ipp_b:... green: {0.75f, 1.0f, {0,255,0; blue:... red:... tmp:... n_lokal: undefiniert Implizite Initialisierung ergänzen b) n_lokal:... ip_a:... n_global:... blue:... c) Variablen angeben, die sich geändert haben...

16 Structs Einfaches Datenmitglied Zeiger auf Objekt des selben Typs. Instanz eines Objektes eines anderen Typs. struct Name { int a; Name* b; Name2 c; var1, var2*; Neuer selbstdefinierter Typ Variable des Typs Name Zeiger auf Objekt des Typs Name Kleiner Bruder der Klassen Initialisierung wie bei Feldern, z.b. Name var3 = {1,0,{...; Datenzugriff mit Punktoperator (.) resp. mit Pfeiloperator (->) bei Zeigern: Name a; Name* b = &a; a.a == b->a;

17 Prüfungsaufgabe Deklarieren sie a, b und c so, dass die nachfolgenden Anweisungen fehlerfrei kompilieren und nicht implizit konvertiert wird. i) b[a]->c =!c; ii) a->c[a->b] = b[c] % 10; Lösung: i) bool c; int a; struct dummy { ; bool c; dummy* b[]; ii) int c; int b[]; struct dummy { int b; int c[]; *a;

18 Blatt 6, Aufgabe 2 Teilaufgabe a) Datenstruktur in Zeile 19 aufzeichnen... Variable node Dereferenzierung eines 0-Zeigers Teilaufgabe b) Output des Programms? Tipp: Schreiben sie sich am besten auf, auf welche Struktur die Variable node gerade zeigt. foo* node;... std::cout << node->value; // 1.2 node = node->next; std::cout << node->value; // 5.0 node = node->next; std::cout << node->value; // Fehler

19 Blatt 6, Aufgabe 4 struct Datum {...; struct Wetter {...; // 1 Zeile in der Datentabelle int main() { const int n = 4; // Anzahl Datensätze const Wetter daten[n] = {...; int i, maxregen, etc... // Indizes // i) // Ermittle durschnittliche Sonnenscheindauer // Aufsummieren und durch Anzahl Tage teilen // ii) // Minimale Temperatur und ihr Datum // iii) // Maximale Niederschlagsmenge und ihr Datum

Informatik 1 ( ) D-MAVT F2010. Pointer, Structs, Sortieren. Yves Brise Übungsstunde 6

Informatik 1 ( ) D-MAVT F2010. Pointer, Structs, Sortieren. Yves Brise Übungsstunde 6 Informatik 1 (251-0832-00) D-MAVT F2010 Pointer, Structs, Sortieren Aufgabe 1.1 Werden die Variablen später noch gebraucht? for (double d = 13, double e = 0;...) {... Ja... dann e vorher deklarieren. In

Mehr

Informatik 1 ( ) D-MAVT F2010. Schleifen, Felder. Yves Brise Übungsstunde 5

Informatik 1 ( ) D-MAVT F2010. Schleifen, Felder. Yves Brise Übungsstunde 5 Informatik 1 (251-0832-00) D-MAVT F2010 Schleifen, Felder Nachbesprechung Blatt 3 Aufgabe 1 ASCII... A > a Vorsicht: Lösen Sie sich von intuitiven Schlussfolgerungen. A ist nicht grösser als a, denn in

Mehr

Informatik 1 ( ) D-MAVT F2011. Klassen, Funktionen. Yves Brise Übungsstunde 9

Informatik 1 ( ) D-MAVT F2011. Klassen, Funktionen. Yves Brise Übungsstunde 9 Informatik 1 (251-0832-00) D-MAVT F2011 Klassen, Funktionen Nachbesprechung Blatt 7, Aufgabe 1 Wenn Funktion void als Rückgabetyp hat, dann ist return nicht notwendig. void swap3(int* a, int* b) { int

Mehr

Informatik 1 ( ) D-MAVT F2010. Rekursion, Signaturen. Yves Brise Übungsstunde 8

Informatik 1 ( ) D-MAVT F2010. Rekursion, Signaturen. Yves Brise Übungsstunde 8 Informatik 1 (251-0832-00) D-MAVT F2010 Rekursion, Signaturen Nachbesprechung Blatt 6 Aufgabe 1 - Strukturen und Zeiger Genau die Variablen angeben, die sich geändert haben. Implizite Initialisierung ergänzt

Mehr

Informatik 1 ( ) D-MAVT F2010. Klassen. Yves Brise Übungsstunde 9

Informatik 1 ( ) D-MAVT F2010. Klassen. Yves Brise Übungsstunde 9 Informatik 1 (251-0832-00) D-MAVT F2010 Klassen Aufgabennachschub Informatik für Mathematiker und Physiker (251-0847-00) von Bernd Gärtner gehalten im Wintersemester. http://www.ti.inf.ethz.ch/ew/courses/info1_09/

Mehr

Advanced Programming in C

Advanced Programming in C Advanced Programming in C Pointer und Listen Institut für Numerische Simulation Rheinische Friedrich-Wilhelms-Universität Bonn Oktober 2013 Überblick 1 Variablen vs. Pointer - Statischer und dynamischer

Mehr

Informatik 1 ( ) D-MAVT F2010. Letzte Übungsstunde. Yves Brise Übungsstunde 12

Informatik 1 ( ) D-MAVT F2010. Letzte Übungsstunde. Yves Brise Übungsstunde 12 Informatik 1 (251-0832-00) D-MAVT F2010 Letzte Übungsstunde Evaluation S3 Frage zu Assistierenden INFK Anz. Der/die Assistent/in war fachlich k.ä. 0 kompetent 1 0 2 0 3 0 4 23% 3 5 77% 10 MW = 4.8 SA =

Mehr

Informatik 1 ( ) D-MAVT F2010. Kontrollanweisungen 1, ASCII. Yves Brise Übungsstunde 3

Informatik 1 ( ) D-MAVT F2010. Kontrollanweisungen 1, ASCII. Yves Brise Übungsstunde 3 Informatik 1 (251-0832-00) D-MAVT F2010 Kontrollanweisungen 1, ASCII Inhalt Ziele: Prüfungsaufgabe Festigung & Repetition Kontrollstrukturen Bemerkung zu Übungsabgabe: Wenn möglich die Zeilenlänge in Dateien

Mehr

C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen. Leibniz Universität IT Services Anja Aue

C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen. Leibniz Universität IT Services Anja Aue C++ - Einführung in die Programmiersprache Zeiger, Referenzen und Strukturen Leibniz Universität IT Services Anja Aue Zeiger (Pointer) Verweis auf eine Speicherstelle. Speicherung einer Speicheradresse.

Mehr

Grundlagen der Informatik 11. Zeiger

Grundlagen der Informatik 11. Zeiger 11. Zeiger Motivation Zeiger und Adressen Zeiger und Funktionen Zeiger und Arrays Dynamische Objekte Grundlagen der Informatik (Alex Rempel) 1 Motivation Dynamische Speicherverwaltung Oft müssen große

Mehr

Felder (Arrays) und Zeiger (Pointers) - Teil I

Felder (Arrays) und Zeiger (Pointers) - Teil I Felder (Arrays) und Zeiger (Pointers) - Teil I Felder: Motivation Wir können jetzt über Zahlen iterieren: for (int i=0; i

Mehr

Informatik I (D-MAVT)

Informatik I (D-MAVT) Informatik I (D-MAVT) Übungsstunde 7 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich Ablauf Nachbesprechung Übung 5 Besprechung/Vertiefung der Vorlesung Vorbesprechung Übung 7 Aufgabe 1:

Mehr

Felder (Arrays) und Zeiger (Pointers) - Teil I

Felder (Arrays) und Zeiger (Pointers) - Teil I Felder (Arrays) und Zeiger (Pointers) - Teil I Feldtypen, Sieb des Eratosthenes, Iteration, Zeigertypen, Zeigerarithmetik, dynamische Speicherverwaltung Felder: Motivation Wir können jetzt über Zahlen

Mehr

Repetitorium Programmieren I + II

Repetitorium Programmieren I + II Repetitorium Programmieren I + II Stephan Gimbel Johanna Mensik Michael Roth 6. März 2012 Agenda 1 Operatoren 2 Datentypen Gleitpunkt Zahl Typkonvertierung 3 Strommanipulatoren 4 Bedingungen if-else switch-case

Mehr

Dynamische Datentypen. Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren

Dynamische Datentypen. Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren Dynamische Datentypen Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren Probleme mit Feldern (variabler Länge) man kann sie nicht direkt kopieren und zuweisen Probleme mit

Mehr

Felder (Arrays) und Zeiger (Pointers) - Teil I

Felder (Arrays) und Zeiger (Pointers) - Teil I Felder (Arrays) und Zeiger (Pointers) - Teil I Feldtypen, Sieb des Eratosthenes, Iteration, Zeigertypen, Zeigerarithmetik, dynamische Speicherverwaltung Felder: Motivation n Wir können jetzt über Zahlen

Mehr

Einführung Pointer. C-Kurs 2013, 2. Vorlesung. Nico Andy

Einführung Pointer. C-Kurs 2013, 2. Vorlesung. Nico Andy Einführung Pointer C-Kurs 2013, 2. Vorlesung Nico nico@freitagsrunde.org Andy andrew@freitagsrunde.org http://wiki.freitagsrunde.org 10. September 2013 This work is licensed under the Creative Commons

Mehr

C++ Teil 6. Sven Groß. 23. Nov Sven Groß (IGPM, RWTH Aachen) C++ Teil Nov / 15

C++ Teil 6. Sven Groß. 23. Nov Sven Groß (IGPM, RWTH Aachen) C++ Teil Nov / 15 C++ Teil 6 Sven Groß 23. Nov 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 6 23. Nov 2015 1 / 15 Themen der letzten Vorlesung const-deklaration Referenzen Zeiger Felder Sven Groß (IGPM, RWTH Aachen) C++

Mehr

Zeiger: Der Adressoperator &

Zeiger: Der Adressoperator & Zeiger: Der Adressoperator & Variablen werden im Computer im Speicher abgelegt. Nach der Deklaration int a,b,c; double x,y,z; Sieht die Speicherbelegung etwa wie folgt aus: a b c x y z Jede Variable hat

Mehr

Informatik 1 ( ) D-MAVT F2011. Logik, Schleifen. Yves Brise Übungsstunde 4

Informatik 1 ( ) D-MAVT F2011. Logik, Schleifen. Yves Brise Übungsstunde 4 Informatik 1 (251-0832-00) D-MAVT F2011 Logik, Schleifen Allgemeines / Fragen C Preprocessor / Makros Der Name eines Makros (resp. Konstanten) muss ein gültiger identifier sein. #define &PI& 3.14159 Fehler

Mehr

Teil 6: Strukturen und Unionen Gliederung

Teil 6: Strukturen und Unionen Gliederung Teil 6: Strukturen und Unionen Gliederung Strukturen Typdefinitionen Unionen Dynamische Speicherverwaltung Strukturen 6.2 Strukturen Ursprung in Pascal als Datentyp record, Verbunddatentyp Strukturtyp

Mehr

Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek 25. März 2011

Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek 25. März 2011 Kompaktkurs Einführung in die Programmierung Klausur Seite 1/10 Name, Vorname, Unterschrift: Matrikelnummer: Wichtig: Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek

Mehr

Algorithmen zur Datenanalyse in C++

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

Mehr

Informatik II Übung 5

Informatik II Übung 5 Informatik II Übung 5 Florian Scheidegger florsche@student.ethz.ch Folien mit freundlicher Genehmigung adaptiert von Gábor Sörös und Simon Mayer gabor.soros@inf.ethz.ch, simon.mayer@inf.ethz.ch 27.03.2013

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Speicherverwaltung und Parameterübergabe Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Gültigkeitsbereich von

Mehr

Teil 6: Strukturen und Unionen Gliederung

Teil 6: Strukturen und Unionen Gliederung Teil 6: Strukturen und Unionen Gliederung Strukturen Typdefinitionen Unionen Dynamische Speicherverwaltung Strukturen Typdefinitionen Unionen Dynamische Speicherverwaltung Strukturen 6.2 Strukturen Typdefinitionen

Mehr

Informatik - Übungsstunde

Informatik - Übungsstunde Informatik - Übungsstunde Jonas Lauener (jlauener@student.ethz.ch) ETH Zürich Woche 12-23.05.2018 Lernziele Klassen Dynamic Memory Jonas Lauener (ETH Zürich) Informatik - Übung Woche 12 2 / 20 Structs

Mehr

Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher

Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher Arvid Terzibaschian 1 Zusammengesetzte Datentypen 2 Wozu zusammengesetzte Datentypen? Anforderung: Sie sollen ein Kundenverzeichnis

Mehr

PVK Informatik I 1.Teil. Grundlagen Variablen Operatoren Fallunterscheidung Schleifen Kurzschreibweise Pointer Array Dynamische Strukturen Funktionen

PVK Informatik I 1.Teil. Grundlagen Variablen Operatoren Fallunterscheidung Schleifen Kurzschreibweise Pointer Array Dynamische Strukturen Funktionen PVK Informatik I 1.Teil Grundlagen Variablen Operatoren Fallunterscheidung Schleifen Kurzschreibweise Pointer Array Dynamische Strukturen Funktionen 1 Grundlagen #include #include using

Mehr

Zeiger und dynamischer Speicher

Zeiger und dynamischer Speicher Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Zuletzt aktualisiert: 09.12.2013, 07:49 Uhr

Mehr

Visuelle Kryptographie. Anwendung von Zufallszahlen

Visuelle Kryptographie. Anwendung von Zufallszahlen Visuelle Kryptographie Anwendung von Zufallszahlen Verschlüsseln eines Bildes Wir wollen ein Bild an Alice und Bob schicken, so dass Verschlüsseln eines Bildes Wir wollen ein Bild an Alice und Bob schicken,

Mehr

F Zeiger, Felder und Strukturen in C

F Zeiger, Felder und Strukturen in C F Zeiger, Felder und Strukturen in C F Zeiger, Felder und Strukturen in C F.1 Zeiger(-Variablen) 1 Einordnung Konstante: Bezeichnung für einen Wert a 0110 0001 Variable: Bezeichnung eines Datenobjekts

Mehr

Grundlagen der Informatik 12. Strukturen

Grundlagen der Informatik 12. Strukturen 12. Strukturen Strukturen und deren Komponenten Strukturen im Projekt Dynamisch erstellte Strukturen Strukturen und Operatoren Strukturen und Funktionen Einfach verkettete Liste Grundlagen der Informatik

Mehr

Crashkurs C++ - Teil 1

Crashkurs C++ - Teil 1 Crashkurs C++ - Teil 1 Intro Speicherverwaltung Variablen, Pointer, Referenzen Felder statische & dynamische Allozierung Birgit Möller & Denis Williams AG Bioinformatik & Mustererkennung Institut für Informatik

Mehr

AuD-Tafelübung T-B5b

AuD-Tafelübung T-B5b 6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit

Mehr

Nachname: Vorname: Matr.-Nr.: Punkte: 1. Aufgabe: ( / 25 Pkt.) Gegeben ist das folgende Struktogramm zur Berechnung von sin(x) mit Hilfe einer Reihe.

Nachname: Vorname: Matr.-Nr.: Punkte: 1. Aufgabe: ( / 25 Pkt.) Gegeben ist das folgende Struktogramm zur Berechnung von sin(x) mit Hilfe einer Reihe. 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: ( / 25 Pkt.) Gegeben ist das folgende

Mehr

6 Speicherorganisation

6 Speicherorganisation 6 Speicherorganisation Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dynamische Datenobjekte Pointer/Zeiger, Verkettete Liste Eigene Typdefinitionen 1 Zeigeroperatoren & und * Ein Zeiger ist die Speicheradresse irgendeines Objektes. Eine

Mehr

Grundgebiete der Informatik 2 Lösungsvorschlag zur Probeklausur

Grundgebiete der Informatik 2 Lösungsvorschlag zur Probeklausur Lehrstuhl für Informatik 3 Prof. Dr.-Ing. M. Nagl RWTH Aachen Grundgebiete der Informatik 2 Lösungsvorschlag zur Probeklausur Prof. Dr.-Ing. M. Nagl Simon Becker Ulrike Ranger René Wörzberger Aufgabe 1

Mehr

Einführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz

Einführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz Patrick Schulz patrick.schulz@paec-media.de 29.04.2013 1 Einführung Einführung 2 3 4 Quellen 1 Einführung Einführung 2 3 4 Quellen Hello World in Java Einführung 1 public class hello_ world 2 { 3 public

Mehr

Konstruktor/Destruktor

Konstruktor/Destruktor 1/23 Konstruktor/Destruktor Florian Adamsky, B. Sc. (PhD cand.) florian.adamsky@iem.thm.de http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/23 Outline 1 2 3/23 Inhaltsverzeichnis 1 2

Mehr

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen

Mehr

Informatik I (D-ITET)

Informatik I (D-ITET) Ablauf Informatik I (D-ITET) Übungsstunde 5, 26.10.2009 simonmayer@student.ethz.ch ETH Zürich Nachbesprechung Übung 3 Besprechung/Vertiefung der Vorlesung [21.10.2009] Vorbesprechung Übung 5 2.c) Test

Mehr

Informatik I (D-MAVT)

Informatik I (D-MAVT) Informatik I (D-MAVT) Übungsstunde 9 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich Ablauf Nachbesprechung Übung 7 Besprechung/Vertiefung der Vorlesung Vorbesprechung Übung 9 Aufgabe 1:

Mehr

Structs, Referenztypen und Const-Typen

Structs, Referenztypen und Const-Typen Structs, Referenztypen und Const-Typen Rechnen mit rationalen Zahlen o Rationale Zahlen (Q) sind von der Form n/d, mit n und d ausz o C++ hat keinen eingebauten Typ für rationale Zahlen Rechnen mit rationalen

Mehr

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen

Mehr

Zeiger. Zeiger ist eine Variable deren Wert eine Adresse enthält. Zeiger werden im Programm definiert. int *pmyinteger; Type *PointerName ;

Zeiger. Zeiger ist eine Variable deren Wert eine Adresse enthält. Zeiger werden im Programm definiert. int *pmyinteger; Type *PointerName ; Zeiger & Variable ist ein Speicherort im C++ Programm und hat eine Adresse. Variable - Zugriff auf Variable und/oder Adresse * & Operator liefert die Adresse einer Variablen im Speicher Adresse int myvariable

Mehr

Dynamische Datentypen

Dynamische Datentypen Dynamische Datentypen Tupel und Folgen o Wertebereich eines Structs / einer Klasse: T1 T2... Tk Werte sind k-tupel Tupel und Folgen o Wertebereich eines Structs / einer Klasse: T1 T2... Tk Werte sind k-tupel

Mehr

Programmier-Befehle - Woche 08

Programmier-Befehle - Woche 08 Datentypen Vektoren (mehrdim.) eines bestimmten Typs Erfordert: #include Wichtige Befehle: Definition: std::vector my vec (n rows, std::vector(n cols, init value)) Zugriff:

Mehr

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi 1. Datentypen C-Grundlagen zur Programmierung des MicroControllersystems MiCoWi Die Grafiken und Beispiele wurden dem Buch C von A bis z von Jürgen Wolf entnommen. Es werden hier die ANSI-Festlegungen

Mehr

Datenkapselung: public / private

Datenkapselung: public / private 627 18. Klassen Klassen, Memberfunktionen, Konstruktoren, Stapel, verkettete Liste, dynamischer Speicher, Copy-Konstruktor, Zuweisungsoperator, Destruktor, Konzept Dynamischer Datentyp Datenkapselung:

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu wissenschaftlichen Rechnens mit C++ und Matlab SS2013 Inhalt Bis jetzt: Heute: Entwicklungsumgebung

Mehr

Zeiger, Arrays und Strings in C und C++

Zeiger, Arrays und Strings in C und C++ Zeiger, Arrays und Strings in C und C++ 1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für

Mehr

Informatik - Übungsstunde

Informatik - Übungsstunde Informatik - Übungsstunde Jonas Lauener (jlauener@student.ethz.ch) ETH Zürich Woche 08-25.04.2018 Lernziele const: Reference const: Pointer vector: iterator using Jonas Lauener (ETH Zürich) Informatik

Mehr

Informatik II Übung, Woche 14

Informatik II Übung, Woche 14 Giuseppe Accaputo 7. April, 2016 Plan für heute 1. Java Klassen Beispiel: Implementation eines Vorlesungsverzeichnis (VVZ) 2. Informatik II (D-BAUG) Giuseppe Accaputo 2 Java Klassen Beispiel: Implementation

Mehr

Kontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer

Kontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer Block 1 1. Welcher Wert hat w? int w = 034; 28 (Dezimal) 034 wird als Octal interpretiert 34oct = 28dec 2. Wie lauten die Ergebnisse? unsigned int a = 3, b = 5, c = 7; unsigned int x, y, z; x = a == 3;

Mehr

C++ Teil 4. Sven Groß. 30. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 16

C++ Teil 4. Sven Groß. 30. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 16 C++ Teil 4 Sven Groß IGPM, RWTH Aachen 30. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 4 30. Apr 2015 1 / 16 Themen der letzten Vorlesung Funktionen: Definition und Aufruf Wert- und Referenzparameter,

Mehr

C++ vs. Java. Hello world! Java C++ class HelloWorld { static public void main(string args) { System.out.println("Hello World!

C++ vs. Java. Hello world! Java C++ class HelloWorld { static public void main(string args) { System.out.println(Hello World! Hello world! Java class HelloWorld { static public void main(string args) { System.out.println("Hello World!"); } } C #include main() { printf("hello World!\n"); } C++ #include using

Mehr

C++ Teil 5. Sven Groß. 13. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 18

C++ Teil 5. Sven Groß. 13. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 18 C++ Teil 5 Sven Groß 13. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 13. Mai 2016 1 / 18 Themen der letzten Vorlesung Funktionen Funktionsüberladung, Signatur Rekursion const-deklaration Referenzen

Mehr

Verschlüsseln eines Bildes. Visuelle Kryptographie. Verschlüsseln eines Bildes. Verschlüsseln eines Bildes

Verschlüsseln eines Bildes. Visuelle Kryptographie. Verschlüsseln eines Bildes. Verschlüsseln eines Bildes Verschlüsseln eines Bildes Visuelle Kryptographie Anwendung von Zufallszahlen Wir wollen ein Bild an Alice und Bob schicken, so dass Alice allein keine Information über das Bild bekommt Bob allein keine

Mehr

Einführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin

Einführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin Fakutltät IV Technische Universität Berlin 5. Mai 2014 Inhaltsverzeichnis 1 2 3 4 5 6 7 Überblick Beispielprogramm in Java Beispielprogramm in C 1 2 3 4 5 6 7 Beispielprogramm in Java Beispielprogramm

Mehr

Informatik 1 ( ) D-MAVT F2010. Funktionen. Yves Brise Übungsstunde 7

Informatik 1 ( ) D-MAVT F2010. Funktionen. Yves Brise Übungsstunde 7 Informatik 1 (251-0832-00) D-MAVT F2010 Funktionen Nachbesprechung Blatt 5, Aufgabe 1 Pseudocode im Allgemeinen gut gelöst. Vergleiche mit Musterlösung. Bubblesort Vergleiche der Reihe nach Paare im unsortierten

Mehr

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

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

Mehr

Datenkapselung: public / private

Datenkapselung: public / private 612 18. Klassen Klassen, Memberfunktionen, Konstruktoren, Stapel, verkettete Liste, dynamischer Speicher, Copy-Konstruktor, Zuweisungsoperator, Destruktor, Konzept Dynamischer Datentyp Datenkapselung:

Mehr

Probeklausur Name: (c)

Probeklausur Name: (c) Einführung in die Praktische Informatik 30.1.2013 Probeklausur Name: Teil I: Datentypen (20 Punkte) Lösen sie die Probleme, indem sie die korrekten Lösungen ankreuzen bzw. in die vorgesehenen Freiräume

Mehr

Variablen und Parameter

Variablen und Parameter D3kjd3Di38lk323nnm Variablen und Parameter Eine Variable repräsentiert einen Speicherbereich, der einen veränderbaren Wert enthält. Eine Variable kann eine lokale Variable, ein Parameter (value, ref oder

Mehr

Informatik. Strukturen und Aufzählungstypen. Vorlesung

Informatik. Strukturen und Aufzählungstypen. Vorlesung Informatik Vorlesung 06 Strukturen und Aufzählungstypen 03. Dezember 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik Thomas Hoch 1 Datentypen Die bisher benutzten Datentypen waren

Mehr

Vorlesung Objektorientierte Programmierung Klausur

Vorlesung Objektorientierte Programmierung Klausur Prof. Dr. Stefan Brass 16. Februar 2007 Dipl.-Inform. Annett Thüring Institut für Informatik MLU Halle-Wittenberg Vorlesung Objektorientierte Programmierung Klausur Name: Matrikelnummer: Studiengang: Aufgabe

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

Informatik. Pointer (Dynamisch) Vorlesung. 17. Dezember 2018 SoSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik Thomas Hoch 1

Informatik. Pointer (Dynamisch) Vorlesung. 17. Dezember 2018 SoSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik Thomas Hoch 1 Informatik Vorlesung 08 Pointer (Dynamisch) 17. Dezember 2018 SoSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik Thomas Hoch 1 Pointer (Zeiger) Dynam. Speicher Bisher: Speicherbedarf muss

Mehr

Dynamisches Speichermanagement

Dynamisches Speichermanagement Dynamisches Speichermanagement Proseminar C-Programmierung - Grundlagen und Konzepte Timo Minartz timo.minartz@informatik.uni-hamburg.de Wissenschaftliches Rechnen Fachbereich Informatik Universität Hamburg

Mehr

Klausur in Programmieren

Klausur in Programmieren Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Sommer 2014, 16. Juli 2014 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt) Name: Matrikelnr.:

Mehr

Informatik 1 ( ) D-MAVT F2010. Logik, Schleifen. Yves Brise Übungsstunde 4

Informatik 1 ( ) D-MAVT F2010. Logik, Schleifen. Yves Brise Übungsstunde 4 Informatik 1 (251-0832-00) D-MAVT F2010 Logik, Schleifen Nachbesprechung Blatt 2 Aufgabe 3c): double(9/2) 4.0 double Zuerst wird die Operation ausgeführt und dann erst die Konversion! Allgemein: Dateiendungen:.c

Mehr

Kapitel 5: Funktionen. Inhalt

Kapitel 5: Funktionen. Inhalt Wintersemester 2007/08 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

Mehr

Variablen. Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes

Variablen. Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes Variablen Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes v ist Stück im Speicher, der 4 Bytes lang ist Speicherzugriff? Über Adressen!

Mehr

Prüfung Informatik D-MATH/D-PHYS :00 17:00

Prüfung Informatik D-MATH/D-PHYS :00 17:00 Prüfung Informatik D-MATH/D-PHYS 9. 8. 0 5:00 7:00 Prof. Bernd Gartner Kandidat/in: Name:. Vorname:. Stud.-Nr.:. Ich bezeuge mit meiner Unterschrift, dass ich die Prufung unter regularen Bedingungen ablegen

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Informatik II Übung 05. Benjamin Hepp 3 April 2017

Informatik II Übung 05. Benjamin Hepp 3 April 2017 Informatik II Übung 05 Benjamin Hepp benjamin.hepp@inf.ethz.ch 3 April 2017 Java package Hierarchie import.. nur noetig um Klassen aus anderen Packeten zu importieren Es kann auch immer der vollstaendige

Mehr

Fallstudie: Online-Statistik

Fallstudie: Online-Statistik Fallstudie: Online-Statistik Ziel: Klasse / Objekt, welches Daten konsumiert und zu jeder Zeit Statistiken, z.b. Mittelwert, Varianz, Median (etc.) ausgeben kann Statistics s = new Statistics(maxSize);...

Mehr

Programmierkurs C/C++

Programmierkurs C/C++ Blockkurs: "Einführung in C/C++" Programmierkurs C/C++ Donnerstag Sandro Andreotti andreott@inf.fu-berlin.de WS 2008/09 1 Structs Blockkurs: "Einführung in C/C++" 2 Structs sind Bündel von Variablen (unter

Mehr

Praxis der Programmierung

Praxis der Programmierung Liste, Ausnahmefehler, Template-Funktionen und -Klassen Institut für Informatik und Computational Science Henning Bordihn 1 Stack als einfach verkettete Liste 2 Aufgabe 1 1. Kopieren Sie aus /home/rlehre/w13

Mehr

Variablen in C++ Einfache Variablen Strukturen Arrays und Zeichenketten Zeiger und Referenzen Parameter Dynamische Speicherverwaltung

Variablen in C++ Einfache Variablen Strukturen Arrays und Zeichenketten Zeiger und Referenzen Parameter Dynamische Speicherverwaltung Variablen in C++ Einfache Variablen Strukturen Arrays und Zeichenketten Zeiger und Referenzen Parameter Dynamische Speicherverwaltung Einfache Variablen Typen int, long, short, unsigned bool char float,

Mehr

INE1 Arrays, Zeiger, Datenstrukturen

INE1 Arrays, Zeiger, Datenstrukturen INE1 Arrays, Zeiger, Datenstrukturen Arrays Felder von Elementen gleichen Typs Verwenden von Adressen: Zeiger Datenstrukturen mit struct Zeiger auf Datenstrukturen Spezielle Zeiger und komplexe Deklarationen

Mehr

1.4. Funktionen. Objektorientierte Programmierung mit C++

1.4. Funktionen. Objektorientierte Programmierung mit C++ mehrfache Deklarationen sind erlaubt für jede Funktion muss es (GENAU) eine Definition geben, ansonsten linker error [the one definition rule ODR] Deklarationen in *.h - Files, Definitionen in *.cpp -

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Informatik für Mathematiker und Physiker Woche 7. David Sommer

Informatik für Mathematiker und Physiker Woche 7. David Sommer Informatik für Mathematiker und Physiker Woche 7 David Sommer David Sommer 30. Oktober 2018 1 Heute: 1. Repetition Floats 2. References 3. Vectors 4. Characters David Sommer 30. Oktober 2018 2 Übungen

Mehr

Programmieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff

Programmieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff Programmieren in C Speicher anfordern, Unions und Bitfelder Prof. Dr. Nikolaus Wulff Vergleich: Felder und Strukturen Felder müssen Elemente vom selben Typ enthalten. Strukturen können Elemente unterschiedlichen

Mehr

15. Rekursion 2. Motivation: Taschenrechner. Naiver Versuch (ohne Klammern) Analyse des Problems (15 7 3) = Eingabe * 3 = Ergebnis 15

15. Rekursion 2. Motivation: Taschenrechner. Naiver Versuch (ohne Klammern) Analyse des Problems (15 7 3) = Eingabe * 3 = Ergebnis 15 Motivation: Taschenrechner 15. Rekursion 2 Bau eines Taschenrechners, Formale Grammatiken, Extended Backus Naur Form (EBNF), Parsen von Ausdrücken Ziel: Bau eines Kommandozeilenrechners Beispiel Eingabe:

Mehr

Informatik I (D-MAVT)

Informatik I (D-MAVT) Informatik I (D-MAVT) Übungsstunde 8, 22.4.2009 simonmayer@student.ethz.ch ETH Zürich Aufgabe 1: Pointer & Structs Schauen wir s uns an! Aufgabe 2: Grossteils gut gemacht! Dynamische Arrays! Sortieren:

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Praxisorientierte Einführung in C++ Lektion: "Dynamische Speicherverwaltung"

Praxisorientierte Einführung in C++ Lektion: Dynamische Speicherverwaltung Praxisorientierte Einführung in C++ Lektion: "Dynamische Speicherverwaltung" Christof Elbrechter Neuroinformatics Group, CITEC May 15, 2014 Christof Elbrechter Praxisorientierte Einführung in C++ May 15,

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2010/11 Lokale und globale Variablen Namensräume Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund

Mehr

17. Klassen. Überladen von Funktionen. Funktionsüberladung. Operator-Überladung (Operator Overloading) operatorop

17. Klassen. Überladen von Funktionen. Funktionsüberladung. Operator-Überladung (Operator Overloading) operatorop Überladen von Funktionen 17. Klassen Funktions- und Operatorüberladung, Datenkapselung, Klassen, Memberfunktionen, Konstruktoren Funktionen sind durch Ihren Namen im Gültigkeitsbereich ansprechbar Es ist

Mehr

C++ Teil 6. Sven Groß. 27. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 14

C++ Teil 6. Sven Groß. 27. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 14 C++ Teil 6 Sven Groß 27. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 6 27. Mai 2016 1 / 14 Themen der letzten Vorlesung Musterlösung A2 Wdh.: Zeiger und Felder Kopieren von Feldern Dynamische Speicherverwaltung

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung C++ Objektorientierte Programmierung Erweiterung von selbstdefinierten Datentypen (struct) zu Klasse. Eine Klasse besteht dann aus - Attributen (Untertypen wie struct) und zusätzlich - aus Methoden (Funktionen

Mehr

Java vs. C++: Different by Design

Java vs. C++: Different by Design Java vs. C++: Different by Design Java starke Anlehnung an C++ Deployment Schema: Interpretation OO ist (nahezu) zwingend primäres Kriterium: Komfort diverse (und zumeist nicht abschaltbare) implizite

Mehr

Typ : void* aktuelle Parameter Pointer von beliebigem Typ

Typ : void* aktuelle Parameter Pointer von beliebigem Typ 2. Funktionen - Prototypvereinbarung typangabe funktionsname(parameterliste); - Funktionsdefinition typ funktionsname(parameterliste){ Anweisung - Funktionstyp -> Typ der Funktionswertes zulaessige Typangaben

Mehr