Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Liebe Leser!
Inhaltsverzeichnis
Materialien zum Buch
1 Eine erste Einführung
1.1 Welche Vorteile bietet C?
1.2 Was benötige ich zum Programmieren?
1.3 Wie ist dieses Buch aufgebaut?
1.4 Wie sollten Sie mit diesem Buch arbeiten?
1.5 C-Standards
1.6 Ubuntu Linux unter Windows
2 Unser erstes Programm
2.1 Wie gebe ich das Programm ein?
2.2 Was bedeuten die einzelnen Zeilen?
2.3 Das Programm wird gespeichert
2.4 Wie starte ich das fertige Programm?
2.5 Eine weitere Möglichkeit zum Starten
2.6 Kommentare sind wichtig
2.7 Eine Übungsaufgabe
3 Verschiedene Arten von Daten
3.1 Daten bekannt machen und speichern
3.2 Wie gebe ich Daten auf dem Bildschirm aus?
3.3 Wie kann der Benutzer seine Daten per Tastatur eingeben?
3.4 Berechnungen mit Operatoren
3.5 Entwicklung eines Programms
3.6 Fehler suchen
3.7 Eine Übungsaufgabe
4 Verschiedene Fälle in einem Programm
4.1 Eine einfache Bedingung mit »if«
4.2 Welche Bedingungen gibt es?
4.3 Zwei Möglichkeiten, mit »if« und »else«
4.4 Wie kann ich Bedingungen kombinieren?
4.5 Eine Übungsaufgabe
5 Programmteile wiederholen
5.1 Regelmäßige Wiederholungen mit »for«
5.2 Bedingte Wiederholungen mit »do-while«
5.3 Besser vorher prüfen mit »while«?
5.4 Tabellen formatieren
5.5 Eine Übungsaufgabe zu Tabellen
5.6 Eine Übungsaufgabe zur Eingabekontrolle
6 Programme übersichtlich aufteilen
6.1 Wie definiere ich eine Funktion?
6.2 Wie rufe ich eine Funktion auf?
6.3 Werte an eine Funktion übergeben
6.4 Ein Ergebnis von einer Funktion zurückerhalten
6.5 Eine Übungsaufgabe
7 Große Datenmengen speichern
7.1 Felder erzeugen und mit Daten füllen
7.2 Wie gebe ich die Daten aus?
7.3 Wie kann der Benutzer ein Feld füllen?
7.4 Eine Übungsaufgabe
8 Zeichen und Texte speichern
8.1 Zeichenketten erzeugen und füllen
8.2 Wie gebe ich eine Zeichenkette aus?
8.3 Wie kann der Benutzer eine Zeichenkette füllen?
8.4 Mehrere Zeichenketten
8.5 Wie kann ich Zeichenketten formatieren?
8.6 Eine Übungsaufgabe
9 Indirekter Zugriff mit Zeigern
9.1 Wie arbeite ich mit Zeigern und Adressen?
9.2 Wie nutze ich Zeiger bei Funktionen?
9.3 Wir zeigen auf Felder
9.4 Eine Übungsaufgabe
10 Unterschiedliche Daten zusammenfassen
10.1 Strukturen definieren
10.2 Wie erzeuge ich Strukturdaten?
10.3 Wie gebe ich die Daten aus?
10.4 Wie kann der Benutzer Strukturen füllen?
10.5 Mehrere Strukturdaten
10.6 Wie übergebe ich Strukturdaten?
10.7 Eine Übungsaufgabe
11 Daten auf der Festplatte
11.1 Wie speichere ich Daten auf der Festplatte?
11.2 Wie lese ich Daten von der Festplatte?
11.3 Eine Übungsaufgabe
12 Eine Vertiefung der bisherigen Themen
12.1 Verschiedene Arten von Daten
12.1.1 Mehrere Daten auf einmal einlesen
12.1.2 Datentypen für ganze Zahlen
12.1.3 Datentypen für Zahlen mit Nachkommastellen
12.1.4 Umwandlungen zwischen Datentypen
12.1.5 Konstanten sind unveränderlich
12.1.6 Zufällige Zahlen
12.1.7 Kombinierte Zuweisungen
12.1.8 Daten tauschen
12.1.9 Alle Operatoren
12.2 Verschiedene Fälle in einem Programm
12.2.1 Wahrheitswerte
12.2.2 Bedingte Zuweisung
12.2.3 Mehr als zwei Fälle
12.2.4 Fälle zusammenfassen
12.2.5 Nebenwirkungen bei logischen Verknüpfungen
12.3 Programmteile wiederholen
12.3.1 Varianten der »for«-Schleife
12.3.2 Schleifen vorzeitig abbrechen oder später fortsetzen
12.3.3 Eine Schleife in einer Schleife
12.3.4 Eine mehrfache Schleife abbrechen
12.4 Programme übersichtlich aufteilen
12.4.1 Funktionen deklarieren
12.4.2 Lokale und globale Variablen
12.4.3 Statische Variablen
12.4.4 Rekursive Funktionen
12.4.5 Zeiger auf Funktionen
12.4.6 Beliebige Anzahl von Parametern
12.4.7 Überladen von Funktionen
12.5 Große Datenmengen speichern
12.5.1 Operationen mit Feldern
12.5.2 Mehrdimensionale Felder
12.5.3 Felder sortieren
12.5.4 Elemente in einem Feld suchen
12.6 Zeichen und Texte speichern
12.6.1 Einzelne Zeichen
12.6.2 Der Code eines Zeichens
12.6.3 Funktionen für Zeichenketten
12.6.4 Zeichenketten vergleichen
12.6.5 Zeichenketten zerlegen
12.6.6 Verbessertes Einlesen von Wörtern
12.6.7 Verbessertes Einlesen von Zeichenketten
12.6.8 Zeichenketten und Zahlen umwandeln
12.6.9 Verbessertes Einlesen von Zahlen
12.6.10 Operationen mit Zeichenketten
12.7 Indirekter Zugriff mit Zeigern
12.7.1 Rechnen mit Zeigern und Adressen
12.8 Unterschiedliche Daten zusammenfassen
12.8.1 Vereinfachung durch »typedef«
12.8.2 Strukturen in Strukturen
12.8.3 Enumerationen
12.9 Daten auf der Festplatte
12.9.1 Programm mit Ein- und Ausgabe
12.9.2 Umlenkung der Ein- und Ausgabe
12.9.3 CSV-Dateien schreiben
12.9.4 CSV-Dateien lesen
12.9.5 Datensätze mit fester Länge schreiben
12.9.6 Datensätze mit fester Länge lesen
12.9.7 Datensätze mit fester Länge schreiben und lesen
13 Daten dynamisch im Speicher verwalten
13.1 Warum benötige ich dynamische Felder?
13.2 Eine Datenreihe dynamisch speichern
13.3 Die Größe eines dynamischen Felds ändern
13.4 Eine Tabelle dynamisch speichern
13.5 Wie übergebe ich ein dynamisches Feld an eine Funktion?
14 Arbeiten mit Zahlen
14.1 Winkelfunktionen
14.2 Runden, Nachkommastellen, Modulo
14.3 Weitere mathematische Funktionen
14.4 Komplexe Zahlen darstellen
14.5 Rechnen mit komplexen Zahlen
14.6 Weitere Funktionen für komplexe Zahlen
14.7 Bit-Operatoren
14.8 Umwandlung von Dualzahlen
14.9 Bitfelder
15 Präprozessor-Anweisungen
15.1 Einbinden von Dateien
15.2 Definitionen und Makros
15.3 Definitionen und Verzweigungen
15.4 Eine Systemweiche
16 Zugriff auf Dateien und Verzeichnisse
16.1 Attribute von Dateien und Verzeichnissen
16.2 Zugriffsrechte ändern
16.3 Inhalt eines Verzeichnisses
16.4 Inhalt eines Verzeichnisbaums
16.5 Dateien ändern
16.6 Verzeichnisse ändern
17 Umgang mit Datum und Uhrzeit
17.1 Weltzeit ausgeben
17.2 Lokale Zeit ausgeben und formatieren
17.3 Zeitangaben erzeugen
17.4 Zeitspanne messen
17.5 Zeit abwarten
17.6 Alter berechnen
18 Kommunikation mit dem Betriebssystem
18.1 Wie übergebe ich Daten an ein Programm?
18.2 Wie nutze ich die Rückgabe eines Programms?
18.3 Systemkommandos ausführen
19 Datenbanken
19.1 Aufbau einer Datenbank
19.2 Datenbanken mit SQLite
19.3 Datenbank und Tabelle erzeugen
19.4 Datensätze einfügen
19.5 Anzeigen der Datensätze
19.6 Auswahl von Datensätzen und Feldern
19.7 Auswahl mit Platzhaltern
19.8 Auswahl nach Eingabe
19.9 Sortieren der Ausgabe
19.10 Ändern von Datensätzen
19.11 Löschen von Datensätzen
20 Beispielprojekte
20.1 Lernspiel: Hauptstädte der EU
20.2 Lernspiel: Kopfrechnen
20.2.1 Das Basisprogramm
20.2.2 Version mit Zeitmessung
20.2.3 Version mit Highscore-Datei
20.3 Ausgabe von Morsezeichen
20.3.1 Textdatei als Datenquelle
20.3.2 Morse-Code auf dem Bildschirm
20.3.3 Morse-Code per Lautsprecher
20.4 Spiel Mastermind
21 Grafische Benutzeroberflächen mit GTK+
21.1 Datentypen der »Glib«
21.2 Zeichenketten mit »GString«
21.3 Felder mit GArray
21.3.1 Aufbau des Programms
21.3.2 Rahmen des Programms
21.3.3 Hilfsfunktion zum Einlesen
21.3.4 Ausgabe aller Elemente
21.3.5 Einfügen am Anfang und am Ende
21.3.6 Einfügen an beliebiger Position
21.3.7 Löschen eines Elements
21.4 Die erste Benutzeroberfläche
21.5 Eigenschaften setzen und abrufen
21.6 Ereignisfunktionen
21.7 Positionierung von Widgets
21.8 Auswahl- und Eingabe-Widgets
A Installationen
A.1 Installationen unter Windows
A.1.1 Code::Blocks installieren
A.1.2 Code::Blocks nutzen
A.1.3 Orwell Dev-C++
A.1.4 Die Java-Laufzeitumgebung
A.1.5 Das Eclipse-Paket installieren
A.1.6 Das Eclipse-Paket nutzen
A.1.7 MinGW
A.1.8 MinGW in den Pfad eintragen
A.1.9 Binden eines Programms
A.1.10 SQLite
A.1.11 GTK+
A.2 Installationen unter Ubuntu Linux
A.2.1 Arbeiten im Terminal
A.2.2 Code::Blocks
A.2.3 Java-Laufzeitumgebung
A.2.4 Eclipse
A.2.5 SQLite
A.2.6 GTK+
A.3 Installationen unter macOS
A.3.1 XCode
A.3.2 Arbeiten im Terminal
A.3.3 Code::Blocks
A.3.4 Eclipse CDT
A.3.5 SQLite
A.3.6 GTK+
A.4 Ubuntu Linux unter Windows installieren
A.4.1 Downloads
A.4.2 Virtuelle Maschine konfigurieren
A.4.3 ISO-Datei als Medium einlegen
A.4.4 Installation
A.4.5 Gasterweiterungen
B Hilfestellungen und Übersichten
B.1 Windows – einige Tastenkombinationen
B.2 Unix-Befehle
B.2.1 Inhalt eines Verzeichnisses
B.2.2 Verzeichnis anlegen, wechseln und löschen
B.2.3 Datei kopieren, verschieben und löschen
B.3 Schlüsselwörter der Sprache C
B.4 Liste der Funktionen
B.4.1 Headerdatei »complex.h«
B.4.2 Headerdatei »dirent.h«
B.4.3 Headerdatei »gtk/gtk.h«
B.4.4 Headerdatei »math.h«
B.4.5 Headerdatei »sqlite3.h«
B.4.6 Headerdatei »stdarg.h«
B.4.7 Headerdatei »stdio.h«
B.4.8 Headerdatei »stdlib.h«
B.4.9 Headerdatei »string.h«
B.4.10 Headerdatei »sys/stat.h« beziehungsweise »unistd.h«
B.4.11 Headerdateien »time.h« und »sys/time.h«
B.4.12 Headerdatei »unistd.h«
B.4.13 Headerdatei »windows.h«
C Lösungen der Übungsaufgaben
C.1 Datei »u_name.c« (Abschnitt 2.7)
C.2 Datei »u_daten.c« (Abschnitt 3.7)
C.3 Datei »u_fall.c« (Abschnitt 4.5)
C.4 Datei »u_schleife_for.c« (Abschnitt 5.5)
C.5 Datei »u_schleife_do.c« (Abschnitt 5.6)
C.6 Datei »u_funktion.c« (Abschnitt 6.5)
C.7 Datei »u_feld.c« (Abschnitt 7.4)
C.8 Datei »u_text.c« (Abschnitt 8.6)
C.9 Datei »u_zeiger.c« (Abschnitt 9.4)
C.10 Datei »u_struktur.c« (Abschnitt 10.7)
C.11 Datei »u_datei.c« (Abschnitt 11.3)
C.12 Datei »u_fall_mehrere.c« (Abschnitt 12.2.3)
Stichwortverzeichnis
Rechtliche Hinweise
Über den Autor
← Prev
Back
Next →
← Prev
Back
Next →