next up previous contents
Next: Alte functii referitoare la Up: Operatii asupra fisierelor Previous: Operatii asupra fisierelor   Cuprins


Deschiderea/închiderea fisierelor

La lansarea în executie a unui program se deschid trei fisiere cu canale de tip text:

stdin
- pentru intrarea standard, asociat implicit tastaturii;
stdout
- pentru iesirea standard, asociat implicit ecranului monitorului;
stderr
- pentru iesirea standard pentru erori, asociat implicit ecranului monitorului.
Orice alte fisiere utilizate în program trebuie deschise în mod explicit cu functia fopen.

FILE *fopen(const char *filename, const char *mode);

Prin aceasta se deschide fisierul cu numele filename (care poate include si specificarea caii), i se asociaza un stream si se returneaza un pointer catre structura FILE creata sau NULL, daca fisierul nu a putut fi deschis. Acest pointer este folosit în operatiile ulterioare asupra fisierului.

Parametrul mode este un sir de caractere care poate avea urmatoarele valori:

r
deschide pentru citire;
w
deschide pentru scriere (daca fisierul exista anterior el va fi sters);
a
deschide pentru adaugare (scriere la sfârsitul fisierului);
r+
deschide un fisier existent pentru actualizare (citire si scriere);
w+
deschide un fisier nou pentru actualizare;
a+
deschide pentru actualizare la sfârsitul fisierului.
La sfârsitul sirului de caractere reprezentând modul de acces se mai poate adauga optional sufixul:
t
pentru prelucrare în mod text (implicit);
b
pentru prelucrare în mod binar.
Închiderea unui fisier deschis cu fopen se realizeaza cu functia fclose:

int fclose(FILE *fp);

unde fp este pointerul returnat de functia fopen. Prin închiderea fisierului se elibereaza si zona tampon alocata acestuia. Functia returneaza valoarea 0 daca operatia de închidere s-a efectuat cu succes, respectiv EOF (-1) în caz de eroare.


next up previous contents
Next: Alte functii referitoare la Up: Operatii asupra fisierelor Previous: Operatii asupra fisierelor   Cuprins
Cristian Gavrila 2001-10-02