GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso convertire un puntatore di file ( FILE* fp ) in un descrittore di file (int fd)?

Anche se fileno(FILE *) potrebbe restituire un descrittore di file, fare MOLTA attenzione a non bypassare il buffer di stdio. Se sono presenti dati del buffer (letti o scritti non scaricati), le letture/scritture dal descrittore di file potrebbero darti risultati imprevisti.

Per rispondere a una delle domande secondarie, per convertire un descrittore di file in un puntatore FILE, usa fdopen(3)


La funzione corretta è int fileno(FILE *stream) . Può essere trovato in <stdio.h> , ed è uno standard POSIX ma non lo standard C.


Linux
  1. Come funzionano i limiti del descrittore di file Linux?

  2. Come posso creare un file in ogni cartella?

  3. Come convertire una stringa in un numero intero in UNIX

  4. Come convertire ISO8859-15 in UTF8?

  5. In che modo il contenuto dmesg può essere registrato in un file?

Come convertire l'immagine della fotocamera Raw in JPEG in Linux

Come convertire un file Windows in un file UNIX

Come posso convertire un file .img in vhd?

Come posso rimuovere un file o una directory chiamata \?

Come posso usare sudo per verificare se esiste un file?

Come convertire un file TAR in un file ISO