C Programmazione

Funzione Posix Open con programmazione in C

Funzione Posix Open con programmazione in C
Il concetto di gestione dei file è ampiamente utilizzato in tutti i linguaggi di programmazione. Specificamente per C e C++, troverai una vasta letteratura sulle informazioni riguardanti il ​​concetto di gestione dei file. Ogni volta che vuoi accedere o modificare un file in C o C++, devi prima aprirlo, sia in lettura che in scrittura. Il compito di aprire un file viene eseguito con l'aiuto della funzione Posix Open.

Questa funzione contiene un insieme di parametri che vengono passati insieme a questa funzione per aprire un file specificato. Discuteremo questi parametri nel prossimo titolo del nostro articolo. Tuttavia, l'obiettivo principale di questo articolo è istruirti sull'utilizzo della funzione Posix Open in Linux Mint 20. In questo articolo, scopri come funziona la funzione Open con la programmazione C.

Parametri della funzione Posix Open

La funzione Posix Open contiene due parametri che sono ulteriormente suddivisi in vari tipi. Il primo parametro è noto come Sentiero, che si riferisce alla posizione del file che si desidera aprire. Se stai creando il tuo codice C per aprire un file nella stessa directory in cui risiede il file da aprire, devi solo scrivere il nome del file e omettere il suo percorso. Tuttavia, se il file da aprire risiede in qualsiasi altra directory, è necessario specificare il suo percorso completo come parametro della funzione Apri seguito dalla barra ("/").

Il secondo parametro della funzione Posix Open è noto come Bandiera, che si riferisce alle opzioni con cui è possibile aprire un file. Queste opzioni sono di sola lettura, sola scrittura, lettura e scrittura, creazione di file e prevenzione della creazione di file. I flag corrispondenti di queste operazioni sono O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, e O_EXCL rispettivamente. Puoi utilizzare uno di questi flag alla volta oppure puoi combinare più di un flag contemporaneamente, a seconda delle tue esigenze, separati da "|" simbolo. Inizierai a capire questi flag in modo più chiaro dopo aver letto l'esempio fornito di seguito.

Esempio: utilizzo della funzione Posix Open in Linux Mint 20

Per fornire un esempio dell'utilizzo della funzione Posix Open con la programmazione C in Linux Mint 20, abbiamo creato un programma che tenta di aprire un file. Se quel file esiste già, questa funzione lo aprirà semplicemente; in caso contrario, la funzione creerà un file con il nome specificato. Ora, daremo un'occhiata a tutte le fasi di esecuzione di questo programma, a cominciare dalla sua creazione.

Passaggio 1: creare un programma di esempio per testare la funzione di apertura di Posix

Qui abbiamo creato un documento nella directory Home del nostro sistema Linux Mint 20 e l'abbiamo chiamato OpenFunction.c. Dopo aver creato questo documento, lo apriremo e digiteremo il codice mostrato nell'immagine qui sotto in quel file.

Nel codice mostrato nell'immagine sopra, abbiamo creato una variabile intera, denominata fd, che si riferisce al descrittore di file. A questa variabile verrà assegnato il valore di ritorno della funzione Open. Il valore di questa variabile sarà "3" se la funzione Open viene eseguita con successo. In caso contrario, il suo valore sarà "-1.” Nei parametri della funzione Open, abbiamo fornito un nome file, i.e., "Nuovo file.TXT."Questo file non esisteva prima nel nostro sistema, il che significa che la nostra funzione Apri creerà questo file.

Inoltre, abbiamo specificato tramite i flag della funzione Open che se il file esiste già, allora il file deve essere aperto in modalità di sola lettura; mentre se non esiste, la funzione Apri creerà semplicemente un file con il nome specificato. Abbiamo anche specificato che se il valore di fd variabile è minore di zero, la funzione stamperà anche l'errore che si è verificato durante l'apertura del file specificato. Infine, puoi salvare il tuo codice premendo Ctrl + S.

Passaggio 2: compila il programma di esempio

Dopo aver scritto il programma di esempio, avvieremo il terminale per compilarlo con il seguente comando:

$ gcc OpenFunction.c -o OpenFunction

Qui, OpenFunction.c si riferisce al file di programma di esempio che vogliamo compilare, mentre OpenFunction dopo il flag “-o” si riferisce al file oggetto che verrà creato dopo la compilazione.

Se la compilazione del nostro programma di esempio viene eseguita correttamente, non vedremo alcun messaggio di errore nel terminale dopo aver eseguito il programma, come mostrato nell'immagine seguente:

Passaggio 3: eseguire il programma di esempio

Infine, dopo aver compilato il nostro programma di esempio, possiamo eseguirlo in Linux Mint 20 emettendo il seguente comando:

$ ./OpenFunction

Qui, "OpenFunction" si riferisce allo stesso file oggetto che è stato creato dopo la compilazione del nostro programma di esempio.

Puoi vedere nell'output del nostro programma di esempio nell'immagine sottostante che il valore della nostra variabile File Descriptor, i.e., fd, è “3."Questo output significa che il codice è stato eseguito con successo. In altre parole, un file chiamato "NewFile.txt" è stato creato con successo, poiché il file non esisteva in precedenza nel nostro sistema. Se lo desideri, puoi anche andare a dare un'occhiata nella tua directory Home per verificare se il file è stato creato.

Conclusione

Il tutorial di oggi ti ha mostrato come utilizzare la funzione Posix Open con la programmazione C in Linux Mint 20. Si spera che l'esempio fornito sia sufficiente per sottolineare l'importanza di questa funzione. Indipendentemente dal motivo per cui si apre un file, è comunque necessario utilizzare questa funzione per accedere a un file. Senza questa funzione, non sarai in grado di accedere a nessun file. Pertanto, è necessario apprendere l'uso di questa funzione prima di eseguire la gestione dei file in C e C++.

Tutorial Battaglia per Wesnoth
The Battle for Wesnoth è uno dei giochi di strategia open source più popolari a cui puoi giocare in questo momento. Non solo questo gioco è in svilupp...
0 A.D. Tutorial
Tra i tanti giochi di strategia in circolazione, 0 A.D. riesce a distinguersi come un titolo completo e un gioco molto profondo e tattico nonostante s...
Tutorial Unity3D
Introduzione a Unity 3D Unity 3D è un potente motore di sviluppo di giochi. È multipiattaforma cioè ti permette di creare giochi per mobile, web, desk...