Programowanie C

Funkcja Posix Open z programowaniem C C

Funkcja Posix Open z programowaniem C C
Koncepcja obsługi plików jest szeroko stosowana we wszystkich językach programowania. Specjalnie dla C i C++ znajdziesz obszerną literaturę dotyczącą informacji dotyczących koncepcji obsługi plików file. Za każdym razem, gdy chcesz uzyskać dostęp lub zmodyfikować plik w C lub C++, musisz go najpierw otworzyć, zarówno do odczytu, jak i do zapisu. Zadanie otwarcia pliku jest realizowane za pomocą funkcji Posix Open.

Ta funkcja zawiera zestaw parametrów, które są przekazywane wraz z tą funkcją, aby otworzyć określony plik. Omówimy te parametry w następnym nagłówku naszego artykułu. Jednak głównym celem tego artykułu jest edukacja na temat korzystania z funkcji Posix Open w Linux Mint 20. W tym artykule dowiesz się, jak funkcja Open działa z programowaniem w C.

Parametry funkcji Posix Open

Funkcja Posix Open zawiera dwa parametry, które są dalej podzielone na różne typy. Pierwszy parametr jest znany jako Ścieżka, co odnosi się do lokalizacji pliku, który chcesz otworzyć. Jeśli tworzysz kod C, aby otworzyć plik w tym samym katalogu, w którym znajduje się otwierany plik, wystarczy wpisać nazwę pliku i pominąć jego ścieżkę. Jeśli jednak plik, który ma zostać otwarty, znajduje się w innym katalogu, musisz określić jego pełną ścieżkę jako parametr funkcji Open, a następnie ukośnik („/”).

Drugi parametr funkcji Posix Open jest znany jako Flaga, co odnosi się do opcji, za pomocą których można otworzyć plik. Te opcje to tylko do odczytu, tylko do zapisu, odczytu i zapisu, tworzenia pliku i zapobiegania tworzeniu pliku. Odpowiednie flagi tych operacji to O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, i O_EXCL odpowiednio. Możesz użyć jednej z tych flag na raz lub możesz połączyć więcej niż jedną flagę na raz, w zależności od wymagań, oddzielone znakiem „|” symbol. Po przeczytaniu poniższego przykładu zaczniesz lepiej rozumieć te flagi.

Przykład: Używanie funkcji Posix Open w Linux Mint 20

Aby podać przykład wykorzystania funkcji Posix Open z programowaniem w C w Linux Mint 20, stworzyliśmy program, który próbuje otworzyć plik. Jeśli ten plik już istnieje, ta funkcja po prostu go otworzy; w przeciwnym razie funkcja utworzy plik o określonej nazwie. Teraz przyjrzymy się wszystkim etapom realizacji tego programu, począwszy od jego powstania its.

Krok 1: Utwórz przykładowy program do testowania funkcji Posix Open

Tutaj stworzyliśmy dokument w katalogu domowym naszego systemu Linux Mint 20 i nazwaliśmy go OpenFunction.do. Po utworzeniu tego dokumentu otworzymy go i wpiszemy w tym pliku kod pokazany na obrazku poniżej.

W kodzie pokazanym na powyższym obrazku utworzyliśmy zmienną całkowitą o nazwie fd, który odnosi się do deskryptora pliku. Do tej zmiennej zostanie przypisana wartość zwracana przez funkcję Open. Wartość tej zmiennej będzie wynosić „3”, jeśli funkcja Open zostanie wykonana pomyślnie. W przeciwnym razie jego wartość wyniesie „-1.” W parametrach funkcji Open podaliśmy nazwę pliku, i.mi., "Nowy plik.tekst.” Ten plik nie istniał wcześniej w naszym systemie, co oznacza, że ​​nasza funkcja Open utworzy ten plik.

Ponadto za pomocą flag funkcji Open określiliśmy, że jeśli plik już istnieje, to plik powinien być otwierany w trybie tylko do odczytu; natomiast jeśli nie istnieje, funkcja Open po prostu utworzy plik o określonej nazwie. Określiliśmy również, że jeśli wartość fd zmienna jest mniejsza od zera, wtedy funkcja wypisze również błąd, który wystąpił podczas otwierania podanego pliku. Na koniec możesz zapisać swój kod, naciskając Ctrl + S.

Krok 2: Skompiluj przykładowy program

Po napisaniu przykładowego programu uruchomimy terminal, aby go skompilować za pomocą następującego polecenia:

$ gcc OpenFunction.c -o OpenFunction

Tutaj OpenFunction.c odnosi się do przykładowego pliku programu, który chcemy skompilować, natomiast OpenFunction po fladze „-o” odnosi się do pliku obiektowego, który zostanie utworzony po kompilacji.

Jeśli kompilacja naszego przykładowego programu przebiegnie pomyślnie, po uruchomieniu programu nie zobaczymy żadnych komunikatów o błędach w terminalu, jak pokazano na poniższym obrazku:

Krok 3: Uruchom przykładowy program

Na koniec, po skompilowaniu naszego przykładowego programu, możemy go uruchomić w Linux Mint 20 wydając następujące polecenie:

$ ./Otwarta funkcja

Tutaj „OpenFunction” odnosi się do tego samego pliku obiektowego, który został utworzony po kompilacji naszego przykładowego programu.

Możesz zobaczyć na wyjściu naszego przykładowego programu na poniższym obrazku, że wartość naszej zmiennej deskryptora pliku, i.mi., fd, to „3.”To wyjście oznacza, że ​​kod został wykonany pomyślnie. Innymi słowy, plik o nazwie „NewFile.txt” został pomyślnie utworzony, ponieważ plik nie istniał wcześniej w naszym systemie. Jeśli chcesz, możesz nawet sprawdzić w swoim katalogu domowym, czy plik został utworzony.

Wniosek

Dzisiejszy samouczek pokazał, jak korzystać z funkcji Posix Open z programowaniem w C w Linux Mint 20. Mam nadzieję, że podany przykład wystarczy, aby podkreślić wagę tej funkcji this. Bez względu na powód otwarcia pliku, nadal musisz użyć tej funkcji, aby uzyskać dostęp do pliku. Bez tej funkcji nie będziesz mieć dostępu do żadnych plików. Dlatego musisz nauczyć się korzystania z tej funkcji przed wykonaniem obsługi plików w C i C++.

Gry How to Install and Play Doom on Linux
How to Install and Play Doom on Linux
Introduction to Doom The Doom Series originated in the 90s after the release of the original Doom. It was an instant hit and from that time onwards th...
Gry Vulkan for Linux Users
Vulkan for Linux Users
With each new generation of graphics cards, we see game developers push the limits of graphical fidelity and come one step closer to photorealism. But...
Gry OpenTTD vs Simutrans
OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...