I když fileno(FILE *)
může vrátit deskriptor souboru, buďte VELMI opatrní, abyste nevynechali vyrovnávací paměť stdio. Pokud existují data ve vyrovnávací paměti (buď čtení nebo zápis), čtení/zápis z deskriptoru souboru vám může poskytnout neočekávané výsledky.
Chcete-li odpovědět na jednu z vedlejších otázek, chcete-li převést deskriptor souboru na ukazatel FILE, použijte fdopen(3)
Správná funkce je int fileno(FILE *stream)
. Lze jej nalézt v <stdio.h>
, a je standardem POSIX, ale ne standardním C.