00_introduction_handout_Z Flashcards

1
Q

Was sind die Hauptmerkmale der Programmiersprache C?

A

C ist statisch typisiert, schwach typisiert, hat ein kompiliertes Ausführungsmodell und ist hardwarenah. Statische Typisierung bedeutet, dass Variablen einen festen Datentyp haben und vor der Verwendung deklariert werden müssen. Schwache Typisierung erlaubt viele implizite und explizite Typumwandlungen. Beim kompilieren wird Quellcode in Maschinencode umgewandelt, bevor er ausgeführt werden kann. C ermöglicht auch direkten Zugriff auf Arbeitsspeicher via Pointer, was es besonders geeignet für das Schreiben von Gerätetreibern macht.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Welche Schritte umfasst der Workflow mit GCC beim Erstellen eines Programms?

A

Der Workflow mit GCC umfasst drei Hauptschritte: Präprozessieren, Kompilieren und Linken. Der Präprozessor bearbeitet Anweisungen, die mit # beginnen. Das Kompilieren wandelt den C-Code in Maschinencode um, der noch nicht ausführbar ist. Das Linken fügt mehrere Maschinencode-Dateien zu einem ausführbaren Programm zusammen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was ist die GNU Compiler Collection (GCC) und welche Sprachen unterstützt sie?

A

Die GNU Compiler Collection (GCC) ist ein weitverbreiteter Open-Source-Compiler, der hauptsächlich für C und C++ verwendet wird. Zusätzlich unterstützt GCC auch andere Programmiersprachen wie Ada und Fortran.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Welche Unterschiede gibt es zwischen C und Python bezüglich Scope und Deklarationen?

A

In C ist der Scope und die Reihenfolge von Deklarationen und Definitionen strenger als in Python. Variablen und Funktionen müssen in C vor ihrer Verwendung deklariert oder definiert werden, während Python flexibler mit der Reihenfolge und dem Scope umgeht.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welche Befehle sind wichtig, um mit GCC zu arbeiten, und was bewirken sie?

A

Wichtige GCC-Befehle sind: - -o : Legt den Namen der Ausgabedatei fest. - -Wall: Aktiviert alle Warnungen. - -Werror: Behandelt alle Warnungen als Fehler. - -c: Kompiliert nur, ohne zu linken. - -g: Aktiviert Debugging-Symbole. - -I : Gibt den Pfad zu Header-Dateien an. - -L : Gibt den Pfad zu Programmbibliotheken an. - -l: Linkt die angegebene Programmbibliothek.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Welche Arten von Fehlern und Warnungen gibt es beim Kompilieren mit GCC?

A

Beim Kompilieren mit GCC gibt es Errors und Warnings. Errors verhindern die Erstellung eines lauffähigen Programms. Warnings sind kleinere Fehler, die zwar ein lauffähiges Programm erzeugen, aber nicht ignoriert werden sollten, da sie zu Punktabzug bei Hausübungen führen können.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was sind die geschichtlichen Ursprünge der Programmiersprache C?

A

C wurde zwischen 1969 und 1973 in den Bell Laboratories für Unix entwickelt. Es gab verschiedene Standardisierungen, beginnend mit K&R C im Jahr 1978 bis hin zu C18 im Jahr 2018.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Welche Tools und Ressourcen werden für das Selbststudium der Programmiersprache C empfohlen?

A

Für das Selbststudium der Programmiersprache C wird das Buch “C von A bis Z” von Jürgen Wolf empfohlen. Themen und Ressourcen dazu sind auf der Plattform Sakai zugänglich.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was sind die Ziele des Lernens der Programmiersprache C in Bezug auf Softwareentwicklung?

A

Die Lernziele umfassen das Beherrschen der Programmiersprache C als Beispiel einer imperativen Programmiersprache, das Kompilieren von C-Programmen, die aus mehreren Dateien bestehen, auf der Kommandozeile sowie den Umgang mit einer modernen Entwicklungsumgebung (IDE).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Welche Ressourcen sind neben dem Buch “C von A bis Z” für das Lernen von C verfügbar?

A

Neben dem Buch “C von A bis Z” von Jürgen Wolf, das als Openbook und eBook verfügbar ist, sind weitere Ressourcen und Themen auf der Lernplattform Sakai zugänglich.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly