Systemprogrammierung - AIN/2
Wintersemester 2024/2025



Termine Wintersemester:

Vorlesung immer Mittwochs 8:45 - 9:30 Uhr (im Januar schon ab 8:00 Uhr) in Raum O-002 und Freitags 9.45 - 11.15 Uhr in Raum G-240
Übungen Donnerstags 14:00 - 15:30 Uhr im Labor O-201


Die Klausur

findet voraussichtlich am Mittwoch, 5. Februar 2025 statt.
Bitte beachten Sie wegen eventueller Termin- und Raumänderungen unbedingt die Aushänge.
Als einziges Hilfsmittel ist ein Spickzettel im Umfang eines beidseitig beschriebenen oder bedruckten DIN-A4-Blatts erlaubt.

⤵ SYPR-Klausurvorbereitung.pdf
⤵ SYPR-Probeklausur.pdf

+++ Lerntipp +++ Falls Sie sich noch nicht sicher fühlen, dann nutzen Sie beim ersten Lösen der Probeklausur zunächst alle verfügbaren Hilfsmittel (Rechner, Lehrveranstaltungsunterlagen, Internet). Tun sie das frühzeitig schon einige Wochen vor der Prüfungszeit.
Lösen Sie die Aufgaben der Probeklausur aber auf jeden Fall auch mal unter Zeitdruck mit nur den im Ernstfall erlaubten Hilfsmitteln. Das können Sie auch aufgabenweise tun. Die Punktzahl einer Aufgabe gibt an, wieviel Prozent der Gesamtbearbeitungszeit Sie für die Aufgabe in etwa aufwenden sollten.

Lernplattform Moodle:

Schreiben Sie sich bitte in den Moodle-Kurs "Systemprogrammierung" von AIN ein.


Die Folien aus der Vorlesung:

⤵ SYPR-Teil-1.pdf – Einführung
⤵ SYPR-Teil-2.pdf – C Daten - Literale, Variablen, Typen
⤵ SYPR-Teil-3.pdf – C Anweisungen - Ausdrücke, Operatoren, Ablaufsteuerung
⤵ SYPR-Teil-4.pdf – C Programme - Funktionen, Übersetzungseinheiten, Bibliotheken
⤵ SYPR-Teil-5.pdf – POSIX - Elementare Ein-/Ausgabe, Dateizugriff
⤵ SYPR-Teil-6.pdf – Einführung in C++: Referenzen, Operator-Overloading, Namensräume, Klassen
⤵ SYPR-Teil-7.pdf – C++ Standardbibliothek: Templates, Ein-/Ausgabe, Strings, Container, Algorithmen, Iteratoren, intelligente Zeiger
⤵ SYPR-Teil-8.pdf – Werkzeuge - Programmerstellung, Fehlersuche
Literaturliste

Die PDF-Dateien enthalten anklickbare Notizen, die von Browser-Plugins oft nicht gut dargestellt werden.
Laden Sie die Dateien deshalb immer herunter und verwenden Sie einen PDF-Viewer wie z.B. Adobe Acrobat Reader DC.

+++ Lerntipp +++ Rufen Sie sich vor jeder Vorlesung in Erinnerung, was in der vergangenen Vorlesung besprochen wurde. Lernen Sie die neuen Fachbegriffe. Nutzen Sie den Index der einzelnen Vorlesungsteile, um Ihre Kenntnis der Fachbegriffe zu prüfen und zu verbessern. Planen Sie dafür genug Zeit ein.

Die Beispiel-Programme aus der Vorlesung
erscheinen hier nach und nach ...

Teil 2 Makefile intliteral.c doubleliteral.c charliteral.c intvar.c intsum.c pointervar.c (mit Hauptspeicherbelegung) iptrptr.c constpointer.c voidpointer.c name_adresse.c arrayvar.c (mit Hauptspeicherbelegung) arraypointer.c (mit Hauptspeicherbelegung) stringvar.c matrixvar.c matrixpointer.c matrixpointerpointer.c enumvar.c structvar.c intlist.c unionvar.c
Teil 3 verzweigung.c fallunterscheidung.c while-schleife.c do-schleife.c for-schleife.c spruenge.c
Teil 4 main.c (mit Hauptspeicherbelegung) max.c max-makro.c minmaxsum-pointer.c minmaxsum.c localglobalvar.c inparam.c outparam.c intcmp.c localglobalvar/ date/ minmax/
Teil 5 count.c copy.c list.c
Teil 6 io.cpp einstieg.cpp einstieg-mit-fehlerbehandlung.cpp arrayvar.cpp exception.cpp heap.cpp unique_ptr.cpp Makefile function-overloading.cpp operator-overloading.cpp Namensraum/ Klasse/ eingebettete Klasse/ Vererbung/ Schnittstelle/ dynamic_cast.cpp
Teil 7 Templates/ ostream.cpp istream.cpp htwg::string/ stringvar.cpp htwg::vector/ htwg::array/ vectorvar.cpp arrays.cpp max.cpp find.cpp intlist mit std::find/ htwg::unique_ptr/ htwg::shared_ptr/ Intelligente Zeiger/ intlist mit std::unique_ptr/
Teil 8 hallo/ ...

+++ Lerntipp +++ Schreiben Sie die Programmbeispiele aus der Vorlesung ab und bringen Sie sie zum Laufen. Notieren Sie sich jeweils mit eigenen Worten, was die Programme tun, und versuchen Sie einige Zeit später, die Programme aufgrund dieser Notizen selbstständig neu zu schreiben. Überlegen Sie sich auch eigene Abwandlungen der Programme. Tun Sie dies laufend während des Semesters.

Die Übungsaufgaben
erscheinen hier nach und nach ...

Hinweise zu den Übungen
Linux-Arbeitsumgebung
Einstieg am 10.10.   (Schaubild mit den Arbeitschritten)
Aufgabe 1: C Grundtypen (Abgabe: 24.10.)
Aufgabe 2: C Arrays (Abgabe: 7.11.)
Aufgabe 3: C Strings (Abgabe: 21.11.)
Aufgabe 4: C Aufzählungen, Strukturen, Varianten, Funktionen, POSIX (Abgabe: 12.12.)
Aufgabe 5: C++ Klassen, Iteratoren, Übersetzungseinheiten (Abgabe: 9.1.)
Aufgabe 6: Bibliotheken, Shell-Scripts, Makefiles (Abgabe: 23.1.)



Prof. Dr. H. Drachenfels
Hochschule Konstanz - Impressum - Datenschutzerklärung
Letzte Änderung: 10.1.2025