close(2)

Från Wiki.linux.se
Version från den 22 november 2024 kl. 08.11 av Admin (diskussion | bidrag) (Skapade sidan med '= close(2) - Linux manual page = == Namn == '''close''' - Stänger en filbeskrivare == Bibliotek == Standard C-biblioteket (libc, -lc) == Synopsis == <pre> #include <unistd.h> int close(int fd); </pre> == Beskrivning == Funktionen '''close''' stänger en öppen filbeskrivare. När en filbeskrivare stängs: * Systemresurser associerade med den frigörs. * Om det inte finns några andra filbeskrivare som refererar till filen, skrivs eventuellt buffrad data till disken...')
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

close(2) - Linux manual page

Namn

close - Stänger en filbeskrivare

Bibliotek

Standard C-biblioteket (libc, -lc)

Synopsis

#include <unistd.h>

int close(int fd);

Beskrivning

Funktionen close stänger en öppen filbeskrivare. När en filbeskrivare stängs:

  • Systemresurser associerade med den frigörs.
  • Om det inte finns några andra filbeskrivare som refererar till filen, skrivs eventuellt buffrad data till disken.
      1. Parametrar
  • fd: Filbeskrivaren som ska stängas. Den måste vara en giltig och öppen beskrivare.
      1. Returnerar
  • Vid framgång: 0.
  • Vid fel: -1, och errno(3) sätts för att indikera felet.

Fel

close kan returnera följande felkoder i errno(3):

  • EBADF: fd är inte en giltig filbeskrivare.
  • EINTR: Systemanropet avbröts av en signal innan det kunde avslutas.
  • EIO: Ett in-/ut-fel inträffade vid stängning av filen.

Exempel

#include <unistd.h>
#include <fcntl.h>
#include <stdio.h>

int main() {
    const char *filename = "example.txt";
    int fd = open(filename, O_RDONLY);

    if (fd == -1) {
        perror("open");
        return 1;
    }

    // Använd filbeskrivaren för att läsa eller skriva...

    if (close(fd) == -1) {
        perror("close");
        return 1;
    }

    return 0;
}

Standarder

close följer POSIX.1-2001, POSIX.1-2008 och är en del av System V Interface Definition (SVID).

Anmärkningar

  • Efter att en filbeskrivare har stängts, är det ogiltigt att använda den igen tills den eventuellt återanvänds av systemet.
  • Om en process avslutas, stängs automatiskt alla öppna filbeskrivare som tillhör processen.

Se även

Kolofon

Denna sida är en översättning av manualen för close(2), hämtad från ⟨https://man7.org/linux/man-pages/man2/close.2.html⟩, en del av Linux manualprojektet. För att rapportera fel eller föreslå förbättringar, besök ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.

Sidslut

Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man2/close.2.html
PHP


Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till PC Service som har sponsrat Linux.se med webbhotell.