O_RDONLY, O_WRONLY e O_RDWR FLAGS in lingua C

O_RDONLY, O_WRONLY e O_RDWR FLAGS in lingua C

Nella programmazione, la gestione dei file ci consente di archiviare e accedere a qualsiasi tipo di informazione nei database creati dall'utente, file di sistema per l'esecuzione di programmi, file eseguibili e così via.

La lingua C fornisce, tra le altre cose, la funzione Open () per creare o aprire file. Questa funzione apre o crea un file specificato negli argomenti di input per il suo percorso assoluto o relativo.

Quando utilizziamo questa funzione, abbiamo la possibilità di specificare tramite flags gli attributi che il file da aprire o creare deve avere, ad esempio, ad esempio. se dovrebbe essere di sola lettura, lettura-scrittura o entrambi.

In questo Suggerimento Linux Articolo, imparerai come specificare gli attributi di lettura e scrivere dei file utilizzando il O_rdonly, O_wronly, E O_rdwr bandiere.

Esamineremo una descrizione teorica di queste flag e quindi implementeremo il loro uso in esempi che includono frammenti di codice e immagini in cui impostiamo gli attributi di lettura e scriviamo con queste flag.

Descrizione dei flags o_rdonly, o_wronly e o_rdwr.

Le bandiere O_rdonly, O_wronly E O_rdwr vengono utilizzati nella funzione di sistema Open () per specificare la modalità di apertura di un file. Per capire meglio di cosa parlano queste bandiere, guardiamo la sintassi insieme a una breve descrizione di questa funzione.

int Open (Char *Path, Int Flags)

La funzione Open () apre il file specificato in sentiero in una delle tre modalità seguenti specificate in bandiere:

O_rdonly: apri o crea un file di sola lettura

O_wronly: apre o crea un file di soli scritti.

O_rdwr: apre o crea un file con accesso a lettura e scrittura.

La funzione Open () utilizza anche flag aggiuntivi come O_ Creat, per creare un file o

O_ APPEND, per aggiungere testo ad esso. Nei casi in cui viene utilizzato più di un flag nell'argomento di input di Flags, è necessario eseguire un'operazione logica o.

Queste flag e le funzioni che le usano sono definite nel "FCNTL.H ”intestazione. Pertanto, dobbiamo includerli nel nostro ".File C "come segue per usarli:

#includere

Come aprire un file con l'autorizzazione di lettura e scrivere utilizzando la funzione Open () e le flag O_rdonly, O_wronly e O_rdwr nella lingua C.

In questo esempio, ti mostreremo come aprire un file con le autorizzazioni di lettura e scrittura. Per fare ciò, utilizziamo la funzione Open (), specificando il percorso e il nome del file nel sentiero argomento input e il O_rdwr leggere e scrivere bandiera nei flag di input. Ecco il codice:

#includere
#includere
void main ()

int fd open ("documenti/esempio.txt ", o_rdwr);

In questo modo, Open () restituisce il descrittore FD che possiamo usare con le funzioni Read () e Write () per leggere e scrivere il file.

Come creare un file e impostare gli attributi di lettura e scrittura con i flag O_rdonly, O_wronly e o_rdwr nella lingua C.

In questo esempio, creiamo un file denominato "esempio.TXT" e salvalo nel "Documenti" directory con gli attributi solo leggi usando il O_rdonly bandiera.

Per fare questo, aggiungiamo l'intestazione “FCNTL.h "al nostro file e chiamare la funzione Open () specificando il percorso relativo e il nome del file nel sentiero argomento input, che in questo caso è “Documenti/esempio. TXT".

Dal momento che vogliamo creare il file, utilizziamo il O_ Crea bandiera. E dal momento che vogliamo dargli attributi di sola lettura, usiamo il O_rdonly bandiera. Quindi, dobbiamo eseguire un'operazione logica o tra questi due flag. Ecco il codice per questo esempio:

#includere
#includere
void main ()

int fd open ("documenti/esempio.txt ", o_creat | o_rdonly);

Compiliamo il codice nella console di comando Linux usando GCC, specificando il percorso e il nome del “.File C "e il nome dell'output, come mostrato di seguito:

~ $ GCC documenti/o_flags.c -o o_flag

E eseguiamo l'output con il seguente comando:

~ $ ./o_flag

Quando si esegue questo codice, la funzione Open () creerà un file con attributi di sola lettura. Nella figura seguente, possiamo vedere il file creato in Linux File Manager e i suoi attributi di sola lettura nelle sue proprietà.

Se vogliamo creare un file con accesso a lettura e scrittura, dobbiamo usare il O_rdwr Flag come mostrato di seguito:

#includere
#includere
void main ()

int fd open ("documenti/esempio.txt ", o_creat | o_rdwr);

In questo caso, la funzione Open () crea un file con attributi di lettura e scrittura come mostrato nella figura seguente.

Conclusione

In questo Suggerimento Linux Articolo sulla lingua C, abbiamo spiegato come puoi usare il O_rdonly, O_wronly, E O_rdwr Flags per selezionare la modalità aperta di un file quando si utilizza la funzione Open ().

Ti abbiamo anche mostrato come creare file utilizzando la funzione Open () e O_ Crea flag e come assegnare le autorizzazioni di lettura e scrivere eseguendo un'operazione logica o tra esso e il O_rdonly E O_wronly bandiere.

Speriamo che tu abbia trovato questo articolo utile. Per ulteriori articoli sulla lingua C e sui suggerimenti Linux, utilizzare il motore di ricerca sul nostro sito Web.