Strukturen in C Spelz, Sievers, Bethke. Inhaltsfolie Definition einer Struktur (struct) Dateisysteme...

Preview:

Citation preview

Strukturen in C

Spelz, Sievers, Bethke

Inhaltsfolie Definition einer Struktur (struct) Dateisysteme

Binärdateien Textdateien

Bearbeiten von Dateien Öffnen Lesen Schliessen

Telefonbuchdatei (Programm)

Definition einer StrukturEine Struktur ist eine Ansammlung von ein o. mehreren Variablen, möglicherweise mit verschiedenen Typen, die inter einen einzigen Datensatz zur bequemen Handhabung zusammengefasst sind.

Strukturen erleichtern das objektorientierte Programmieren.

Definition einer Strukturstruct punktA {

int x;

int y;

}

Etikett

Schlüsselwort geschw. Klammern

Komponenten (VAR im struct, lokal)

Definition einer Strukturstruct kunden_typ {

int kunden_nr;char vorname[20];char nachname[20];char adresse[30];int plz;char ort[30];

}struct kunden_typ ein_kunde, mehrere_kunden[100];struct kunden_type *kunde; //Zeiger auf kunde

Lesen & Bearbeiten von Dateien Bearbeitung von Dateien in 2 Modi

Text-Modusgesonderte Bearbeitung von Steuerzeichen

zur Textformatierung

Binär-Modusgleiche Behandlung aller Zeichen

Öffnen von DateienFILE* fopen(char* Name, char* Modus)unser Beispiel:

FILE *datei; datei = fopen("telefondatei.txt","r")1. Datei wird gesucht2. Legt eine FILE-Struktur an3. gibt einen Zeiger auf die Struktur zurückModi:r : nur lesenw : lesen & schreibena : öffnen für anfügende Schreiboperationen am Ende einer

vorhandenen Datei

Lesen von Dateien (Zeichenkette)

fgetc(FILE* dat)

char* fgets(char* String, int n, FILE* dat)

Funktion ließt n-1 Zeichen aus dem

Stream dat in die Zeichenkette String

hängt ein 0x00 an Position n

Lesen von Dateien (sonstige Datentypen)

datentyp fscanf(FILE* dat, char* Formatstring, Zeigerargumente)

Diese Funktion wirkt genau wie scanf:

Schreiben in Dateien Schreiben eines Zeichen in einen Stream mit der Funktion: int fputc(int Zeichen, FILE* datei)

Schreiben einer Zeichenkette in einen Stream mit der Funktion:

int fputs(char* String, FILE* datei)

andere Datentypen werden geschrieben mit der Funktion: int fprintf(FILE* datei, char* Formatstring, Argumente)

Schließen der Dateidatentyp fclose(FILE*);

char fclose(telefonbuch);

int fclose(zahlensystem); .

.

.

Telefonbuchprogramm Version 1 Version 2 Version 3 (mit Filter)

Recommended