Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Aus dem Lektorat Inhaltsverzeichnis   Vorwort   Materialien zum Buch 1   Der Einstieg in die Welt von C
1.1   Die Sprache C 1.2   Die C-Standardbibliothek
1.2.1   Header-Dateien und Programmbibliothek
1.3   Die nötigen Werkzeuge für C 1.4   Übersetzen mit der Entwicklungsumgebung 1.5   Übersetzen mit GCC und Clang 1.6   Listings zum Buch 1.7   Kontrollfragen und Aufgaben im Buch 1.8   Aufgabe
2   Erste Schritte in C
2.1   Das erste Programm genauer betrachtet 2.2   Die Funktion printf() 2.3   Zeichensätze in C
2.3.1   Basis-Ausführungszeichensatz 2.3.2   Einige wichtige Escape-Sequenzen
2.4   Symbole in C
2.4.1   Bezeichner 2.4.2   Reservierte Schlüsselwörter 2.4.3   Literale 2.4.4   Einfache Begrenzer
2.5   Kommentare 2.6   Kontrollfragen und Aufgaben
3   Basisdatentypen in C
3.1   Variablen 3.2   Deklaration und Definition 3.3   Initialisierung und Zuweisung von Werten 3.4   Datentypen für Ganzzahlen
3.4.1   Vorzeichenlos und vorzeichenbehaftet 3.4.2   Suffixe für Ganzzahlen
3.5   Datentypen für Zeichen
3.5.1   Der Datentyp char 3.5.2   Der Datentyp wchar_t 3.5.3   Unicode-Unterstützung
3.6   Datentypen für Fließkommazahlen
3.6.1   Suffixe für Fließkommazahlen 3.6.2   Komplexe Gleitkommatypen
3.7   Boolescher Datentyp 3.8   Speicherbedarf mit sizeof ermitteln 3.9   Die Wertebereiche der Datentypen ermitteln
3.9.1   Limits von Integer-Typen 3.9.2   Limits von Fließkommazahlen 3.9.3   Integer-Typen mit fester Größe verwenden 3.9.4   Sicherheit beim Kompilieren mit static_assert
3.10   Konstanten erstellen 3.11   Lebensdauer und Sichtbarkeit von Variablen 3.12   void – ein unvollständiger Typ 3.13   Kontrollfragen und Aufgaben
4   Rechnen mit C und Operatoren
4.1   Werte formatiert einlesen mit scanf() 4.2   Operatoren 4.3   Arithmetische Operatoren 4.4   Der Inkrement- und der Dekrement-Operator 4.5   Bit-Operatoren 4.6   Implizite Typumwandlung
4.6.1   Arithmetische Umwandlung 4.6.2   Typpromotionen
4.7   Explizite Typumwandlung 4.8   Mathematische Funktionen in C 4.9   Kontrollfragen und Aufgaben
5   Bedingte Anweisungen und Verzweigungen
5.1   Bedingte Anweisungen
5.1.1   Bedingte Anweisungen mit if 5.1.2   Vergleichsoperatoren 5.1.3   Mini-Exkurs zum Anweisungsblock
5.2   Die alternative Verzweigung 5.3   Der Bedingungsoperator ?: 5.4   Die mehrfache Verzweigung mit if und else if
5.4.1   Verschachteln von Verzweigungen
5.5   Mehrfache Verzweigung mit switch
5.5.1   Austritt aus der Fallunterscheidung mit break
5.6   Logische Verknüpfungen
5.6.1   Der !-Operator 5.6.2   Der &&-Operator – Logisches UND 5.6.3   Der ||-Operator – Logisches ODER
5.7   Kontrollfragen und Aufgaben
6   Schleifen – Programmteile wiederholen
6.1   Die Zählschleife – for 6.2   Die kopfgesteuerte while-Schleife 6.3   Die fußgesteuerte do-while-Schleife 6.4   Kontrolliertes Verlassen von Schleifen
6.4.1   break 6.4.2   continue
6.5   Kontrollfragen und Aufgaben
7   Funktionen erstellen
7.1   Funktionen definieren 7.2   Funktionen aufrufen 7.3   Funktionsdeklaration (Vorausdeklaration) 7.4   Funktionsparameter 7.5   Rückgabewert von Funktionen
7.5.1   Die return-Anweisung
7.6   Exkurs: Funktionen bei der Ausführung 7.7   Inline-Funktionen 7.8   Rekursionen 7.9   Die main()-Funktion
7.9.1   Der Rückgabewert von main() an das Betriebssystem
7.10   Programme mit exit() beenden 7.11   Globale, lokale und statische Variablen
7.11.1   Lokale Variablen 7.11.2   Globale Variablen 7.11.3   Die Speicherklasse static 7.11.4   Die Speicherklasse extern
7.12   Kontrollfragen und Aufgaben
8   Präprozessor-Direktiven
8.1   Dateien einfügen mit #include 8.2   Konstanten und Makros mit #define und #undef
8.2.1   Symbolische Konstanten mit #define definieren 8.2.2   Makros mit #define definieren 8.2.3   Symbolische Konstanten und Makros aufheben (#undef)
8.3   Bedingte Kompilierung
8.3.1   Mehrfaches Inkludieren vermeiden
8.4   Programmdiagnose mit assert() 8.5   Generische Auswahl 8.6   Eigene Header-Dateien erstellen 8.7   Kontrollfragen und Aufgaben
9   Arrays und Zeichenketten (Strings)
9.1   Was genau sind Arrays?
9.1.1   Arrays definieren 9.1.2   Arrays mit Werten versehen und auf sie zugreifen 9.1.3   Initialisierung mit einer Initialisierungsliste 9.1.4   Bestimmte Elemente direkt initialisieren 9.1.5   Arrays mit Schreibschutz 9.1.6   Arrays mit fester und variabler Länge (VLA) 9.1.7   Arrays mit scanf einlesen 9.1.8   Arrays an Funktionen übergeben
9.2   Mehrdimensionale Arrays
9.2.1   Zweidimensionalen Arrays Werte zuweisen und auf sie zugreifen 9.2.2   Zweidimensionale Arrays an eine Funktion übergeben 9.2.3   Mehr als zwei Dimensionen verwenden
9.3   Strings (Zeichenketten)
9.3.1   Strings initialisieren 9.3.2   Strings einlesen 9.3.3   Unicode-Unterstützung 9.3.4   String-Funktionen der Standardbibliothek <string.h> 9.3.5   Sicherere Funktionen zum Schutz vor Speicherüberschreitungen 9.3.6   Umwandlungsfunktionen zwischen Zahlen und Strings
9.4   Kontrollfragen und Aufgaben
10   Zeiger (Pointer)
10.1   Zeiger vereinbaren 10.2   Zeiger verwenden
10.2.1   Explizite Typumwandlung für den byteweisen Zugriff
10.3   Zugriff auf den Inhalt von Zeigern
10.3.1   Der NULL-Zeiger 10.3.2   Deklaration, Adressierung und Dereferenzierung von Zeigern
10.4   Zeiger als Funktionsparameter 10.5   Zeiger als Rückgabewert 10.6   Zeigerarithmetik 10.7   Zugriff auf Array-Elemente über Zeiger 10.8   Arrays und Zeiger als Funktionsparameter
10.8.1   Der const-Array-Parameter
10.9   char-Arrays und Zeiger 10.10   Arrays von Zeigern 10.11   void-Zeiger 10.12   Typqualifizierer bei Zeigern
10.12.1   Konstanter Zeiger 10.12.2   Zeiger für konstante Daten 10.12.3   Konstante Zeiger und Zeiger für konstante Daten 10.12.4   Konstante Parameter für Funktionen 10.12.5   restrict-Zeiger
10.13   Zeiger auf Funktionen 10.14   Kontrollfragen und Aufgaben
11   Dynamische Speicherverwaltung
11.1   Neuen Speicher zur Laufzeit reservieren 11.2   Speicherblöcke vergrößern oder verkleinern 11.3   Speicherblöcke wieder freigeben
11.3.1   Memory Leaks (Speicherlecks)
11.4   Kontrollfragen und Aufgaben
12   Komplexe Datentypen
12.1   Strukturen
12.1.1   Strukturtypen deklarieren 12.1.2   Definition einer Strukturvariablen 12.1.3   Erlaubte Operationen auf Strukturvariablen 12.1.4   Deklaration und Definition zusammenfassen 12.1.5   Synonyme für Strukturtypen erstellen 12.1.6   Selektion von Komponenten einer Strukturvariablen 12.1.7   Strukturen initialisieren 12.1.8   Nur bestimmte Komponenten einer Strukturvariablen initialisieren 12.1.9   Zuweisung bei Strukturvariablen 12.1.10   Größe und Speicherausrichtung einer Struktur 12.1.11   Strukturen vergleichen 12.1.12   Strukturen, Funktionen und Strukturzeiger 12.1.13   Arrays von Strukturvariablen 12.1.14   Strukturvariablen als Komponenten in Strukturen 12.1.15   Zeiger als Komponenten in Strukturen
12.2   Unions 12.3   Der Aufzählungstyp enum 12.4   Eigene Typen mit typedef deklarieren 12.5   Kontrollfragen und Aufgaben
13   Dynamische Datenstrukturen
13.1   Einfach verkettete Listen
13.1.1   Ein neues Element in die Liste einfügen 13.1.2   Ein Element suchen und ausgeben 13.1.3   Ein Element aus der Liste entfernen 13.1.4   Das erste Element in der Liste löschen 13.1.5   Ein beliebiges Element in der Liste löschen
13.2   Doppelt verkettete Listen 13.3   Kontrollfragen und Aufgaben
14   Eingabe- und Ausgabefunktionen
14.1   Verschiedene Streams und Standard-Streams
14.1.1   Streams im Textmodus 14.1.2   Streams im binären Modus 14.1.3   Standard-Streams
14.2   Dateien 14.3   Dateien öffnen
14.3.1   Exklusiver Dateizugriff 14.3.2   Weitere Dateifunktionen
14.4   Dateien schließen
14.4.1   Das Limit für maximal geöffnete Dateien
14.5   Auf Fehler oder das Dateiende prüfen
14.5.1   Der End-of-File Indicator 14.5.2   Error Indicator 14.5.3   Informationen zum Fehler ausgeben 14.5.4   Fehler- und EOF-Flag zurücksetzen – clearerr()
14.6   Weitere Funktionen für die Ein- und Ausgabe
14.6.1   Einzelne Zeichen aus einem Stream lesen 14.6.2   Zeichen in den Stream zurückstellen 14.6.3   Einzelne Zeichen in einen Stream schreiben 14.6.4   Zeilenweise aus einem Stream lesen 14.6.5   Zeilenweise in einen Stream schreiben 14.6.6   Lesen und Schreiben in ganzen Blöcken
14.7   Funktionen zur formatierten Ein-/Ausgabe
14.7.1   Funktionen zur formatierten Ausgabe 14.7.2   Umwandlungsvorgaben für die printf-Familie 14.7.3   Weite und Feldbreite 14.7.4   Flags 14.7.5   Genauigkeitsangaben für Zahlen bei printf() 14.7.6   Funktionen für die formatierte Eingabe 14.7.7   Umwandlungsvorgaben für die scanf()-Familie 14.7.8   Suchmengenkonvertierung
14.8   Wahlfreier Dateizugriff
14.8.1   Die aktuelle Dateiposition ermitteln 14.8.2   Die aktuelle Dateiposition ändern
14.9   Sicherere Funktionen mit C11 14.10   Datei löschen oder umbenennen 14.11   Pufferung 14.12   Kontrollfragen und Aufgaben
15   Zeitroutinen (time.h)
15.1   Die Funktion clock() 15.2   Erweiterte Zeitfunktionen
15.2.1   Eine plattformunabhängige delay()-Funktion 15.2.2   Der Datentyp time_t 15.2.3   Der Datentyp struct tm
15.3   Kontrollfragen und Aufgaben 15.4   Schlusswort
A   Übersichtstabellen wichtiger Sprachelemente
A.1   Operatorpriorität (Operator Precedence) A.2   Reservierte Schlüsselwörter in C A.3   Header-Dateien der Standardbibliothek A.4   Kommandozeilenargumente A.5   Weiterführende Ressourcen
B   Lösungen der Übungsaufgaben
B.1   Antworten und Lösungen zu Kapitel 2 B.2   Antworten und Lösungen zu Kapitel 3 B.3   Antworten und Lösungen zu Kapitel 4 B.4   Antworten und Lösungen zu Kapitel 5 B.5   Antworten und Lösungen zu Kapitel 6 B.6   Antworten und Lösungen zu Kapitel 7 B.7   Antworten und Lösungen zu Kapitel 8 B.8   Antworten und Lösungen zu Kapitel 9 B.9   Antworten und Lösungen zu Kapitel 10 B.10   Antworten und Lösungen zu Kapitel 11 B.11   Antworten und Lösungen zu Kapitel 12 B.12   Antworten und Lösungen zu Kapitel 13 B.13   Antworten und Lösungen zu Kapitel 14 B.14   Antworten und Lösungen zu Kapitel 15
Stichwortverzeichnis Rechtliche Hinweise Über das Autorenteam
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion