Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Gymnázium prof. Jana Patočky Jindřišská 36 110 00 Praha 1 „Praha & EU: Investujeme do vaší.

Podobné prezentace


Prezentace na téma: "Gymnázium prof. Jana Patočky Jindřišská 36 110 00 Praha 1 „Praha & EU: Investujeme do vaší."— Transkript prezentace:

1 Gymnázium prof. Jana Patočky Jindřišská Praha 1 „Praha & EU: Investujeme do vaší budoucnosti“

2 Jazyk C Práce se soubory Vstup údajů ze souborů Výstup výsledků práce do souborů Vstupní/výstupní operace jsou vždy bufferované, tzn. -při čtení ze souboru se do paměti načte celý blok najednou a jednotlivé údaje se z něj při běhu programu postupně vybírají -při zápisu do souboru se zapisuje do bufferu (paměťového bloku) a teprve když je plný, zapíše se na médium (disk). V programu je nutno soubory pro vstup a výstup definovat: datový typ FILE * - pointer na objekt typu file FILE (píše se vždy velkými písmeny):

3 Jazyk C Práce se soubory Pro více proměnných: (definice souborové proměnné pro čtení a pro zápis): FILE *fr, *fw ; obvykle se používá *fr pro soubor, který je pro čtení a *fw pro soubor pro zápis Otevření souboru pro čtení: fr = fopen("ctimne.txt", "r") ; /* fr...pointer na soubor */ Pokud se neuvede celá cesta k souboru, předpokládá se umístění souboru ve složce, ve které je program. Otevření souboru pro zápis: fw = fopen("soubor.txt", "w") ; Toto je otevření v textovém režimu, pro binární by bylo "rb" resp. "wb".

4 Jazyk C Práce se soubory Základní operace s otevřeným textovým souborem: (předpokládáme proměnnou f typu FILE): c = getc(f) ; /* cteni jednoho znaku */ putc(c, f) ; /* zapis jednoho znaku */ formátovaný vstup a výstup: pocpol = fscanf(f, "format", argumenty) ; /*podobne jako scanf-pocpol je pocet prectenych polozek */ fprintf(f, "format", argumenty ) ; Uzavření otevřeného souboru: fclose(f) ; Uzavření souboru na konci práce s ním je nutné, zejména při zápisu - uložení obsahu bufferu na médium (disk).

5 Jazyk C Práce se soubory Další funkce pro čtení/zápis: fgets - řádkově orientovaný vstup definice: char *fgets(char *str, int max, FILE *fr) ; /* str - retezec, kam se uklada, max / max delka retezce, fr - soubor ; posledni znak v retezci je \0 */ fputs - řádkově orientovaný výstup definice: int fputs(char *s, FILE *fw) ; /* s - retezec, fw - soubor ; retezec neukoncuje ani nedava \n */


Stáhnout ppt "Gymnázium prof. Jana Patočky Jindřišská 36 110 00 Praha 1 „Praha & EU: Investujeme do vaší."

Podobné prezentace


Reklamy Google