Programare C

Funcția de deschidere Posix cu programare C

Funcția de deschidere Posix cu programare C
Conceptul de manipulare a fișierelor este utilizat pe scară largă în toate limbajele de programare. În special pentru C și C ++, veți găsi o vastă literatură despre informațiile referitoare la conceptul de manipulare a fișierelor. Ori de câte ori doriți să accesați sau să modificați un fișier în C sau C ++, trebuie să îl deschideți mai întâi, fie pentru citire, fie pentru scriere. Sarcina de a deschide un fișier este realizată cu ajutorul funcției Deschidere Posix.

Această funcție conține un set de parametri care sunt trecuți împreună cu această funcție pentru a deschide un fișier specificat. Vom discuta acești parametri în următoarea rubrică a articolului nostru. Cu toate acestea, obiectivul principal al acestui articol este de a vă informa despre utilizarea funcției Posix Open în Linux Mint 20. În acest articol, aflați cum funcționează funcția Deschidere cu programarea C.

Parametrii funcției deschise Posix

Funcția Posix Open conține doi parametri care sunt împărțiți în mai multe tipuri. Primul parametru este cunoscut sub numele de cale, care se referă la locația fișierului pe care doriți să îl deschideți. Dacă creați codul dvs. C pentru a deschide un fișier în același director în care se află fișierul care trebuie deschis, trebuie doar să scrieți numele fișierului și să omiteți calea acestuia. Cu toate acestea, dacă fișierul care urmează să fie deschis se află în orice alt director, atunci trebuie să specificați calea completă a acestuia ca parametru pentru funcția Deschis urmată de linia directă înainte („/”).

Al doilea parametru al funcției Posix Open este cunoscut sub numele de Steag, care se referă la opțiunile cu care puteți deschide un fișier. Aceste opțiuni sunt numai pentru citire, numai pentru scriere, citire și scriere, creați fișier și împiedică crearea fișierului. Steagurile corespunzătoare ale acestor operațiuni sunt O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, și O_EXCL respectiv. Puteți folosi unul dintre aceste stegulețe la un moment dat sau puteți combina mai multe stegulețe simultan, în funcție de cerințele dvs., separate prin „|” simbol. Veți începe să înțelegeți aceste steaguri mai clar după ce citiți exemplul dat mai jos.

Exemplu: Utilizarea funcției de deschidere Posix în Linux Mint 20

Pentru a oferi un exemplu de utilizare a funcției Posix Open cu programare C în Linux Mint 20, am creat un program care încearcă să deschidă un fișier. Dacă acel fișier există deja, atunci această funcție îl va deschide pur și simplu; în caz contrar, funcția va crea un fișier cu numele specificat. Acum, vom arunca o privire asupra tuturor etapelor de execuție a acestui program, începând cu crearea acestuia.

Pasul 1: Creați un eșantion de program pentru a testa funcția de deschidere Posix

Aici, am creat un document în directorul Acasă al sistemului nostru Linux Mint 20 și l-am denumit OpenFunction.c. După crearea acestui document, îl vom deschide și vom introduce codul afișat în imaginea de mai jos în acel fișier.

În codul prezentat în imaginea de mai sus, am creat o variabilă întreagă, numită fd, care se referă la Descriptorul de fișiere. Această variabilă va primi valoarea returnată a funcției Open. Valoarea acestei variabile va fi „3” dacă funcția Deschidere se execută cu succes. În caz contrar, valoarea acestuia va fi „-1.”În parametrii funcției Open, am furnizat un nume de fișier, i.e., „NewFile.txt.”Acest fișier nu exista în sistemul nostru înainte, ceea ce înseamnă că funcția noastră Deschidere va crea acest fișier.

De asemenea, am specificat prin semnalizatoarele funcției Deschidere că, dacă fișierul există deja, atunci fișierul ar trebui să fie deschis în modul numai citire; întrucât dacă nu există, atunci funcția Deschidere va crea pur și simplu un fișier cu numele specificat. De asemenea, am specificat că dacă valoarea fișierului fd variabila este mai mică de zero, atunci funcția va imprima și eroarea care a apărut la deschiderea fișierului specificat. În cele din urmă, vă puteți salva codul apăsând Ctrl + S.

Pasul 2: Compilați un exemplu de program

După ce am scris programul eșantion, vom lansa terminalul pentru al compila cu următoarea comandă:

$ gcc OpenFunction.c -o OpenFunction

Aici, OpenFunction.c se referă la eșantionul de fișier de program pe care dorim să îl compilăm, în timp ce OpenFunction după semnalizatorul „-o” se referă la fișierul obiect care va fi creat după compilare.

Dacă compilarea programului nostru eșantion se desfășoară cu succes, atunci nu vom vedea niciun mesaj de eroare în terminal după rularea programului, așa cum se arată în imaginea de mai jos:

Pasul 3: Rulați programul de probă

În cele din urmă, după compilarea programului nostru de probă, îl putem rula în Linux Mint 20 prin emiterea următoarei comenzi:

$ ./ OpenFunction

Aici, „OpenFunction” se referă la același fișier obiect care a fost creat în urma compilării programului nostru de probă.

Puteți vedea în rezultatul eșantionului nostru din imaginea de mai jos că valoarea variabilei noastre Descriptor de fișiere, i.e., fd, este „3.”Această ieșire înseamnă că codul a fost executat cu succes. Cu alte cuvinte, un fișier numit „NewFile.txt ”a fost creat cu succes, deoarece fișierul nu exista anterior în sistemul nostru. Dacă doriți, puteți chiar să îl verificați în directorul dvs. de pornire pentru a verifica dacă fișierul a fost creat.

Concluzie

Tutorialul de astăzi v-a arătat cum să utilizați funcția Posix Open cu programare C în Linux Mint 20. Sperăm că exemplul furnizat va fi suficient pentru a sublinia importanța acestei funcții. Indiferent care este motivul deschiderii unui fișier, trebuie totuși să utilizați această funcție pentru a avea acces la un fișier. Fără această funcție, nu veți putea accesa niciun fișier. Prin urmare, trebuie să învățați utilizarea acestei funcții înainte de a efectua manipularea fișierelor în C și C++.

Cum să capturați și să transmiteți în flux sesiunea de jocuri pe Linux
În trecut, jocurile erau considerate doar un hobby, dar cu timpul industria jocurilor a cunoscut o creștere imensă în ceea ce privește tehnologia și n...
Cele mai bune jocuri pentru a juca cu urmărirea manuală
Oculus Quest a introdus recent marea idee de urmărire manuală fără controlere. Cu un număr din ce în ce mai mare de jocuri și activități care execută ...
Cum se afișează suprapunerea OSD în aplicații și jocuri Linux pe ecran complet
Jucarea jocurilor pe ecran complet sau utilizarea aplicațiilor în modul ecran complet fără distragere vă poate elimina din informațiile relevante ale ...